标题: [文本处理] 【已结】批处理如何合并上一句echo输出的行 [打印本页]
作者: ganjie 时间: 2009-2-28 23:37 标题: 【已结】批处理如何合并上一句echo输出的行
[attach]968[/attach]假设当前文件夹下有3个图片,- @echo off
- setlocal enabledelayedexpansion
- set "route=%cd%"
- for /f "delims=" %%i in ('dir /b "%route%\*.jpg"') do (
- echox -n src="%%i"
- identify -format "%%wx%%h" %%i
- ::identify这个是获取图片的宽高的
- echox -n 接上一行!
- )>>1.txt
- pause
复制代码
得到
src=11.jpg66x99
接上一行!src=12.jpg66x99
接上一行!src=13.jpg66x99
接上一行!
偶想把它变成
src=11.jpg 66x99 接上一行!
src=12.jpg66x99 接上一行!
src=13.jpg66x99 接上一行!
要怎么处理?批处理可以合并echo输出的内容吗?貌似批处理的第三方工具sed 可以这样处理,是吗?求大虾们,不吝赐教!
identify 命令一定要单独在一行,而且不能在同一行接上其它语句,如:
identify -format "%%wx%%h" %%i 接上一行!
-这样的话 identify 就不能起到获取图片宽高的作用了
identity是ImageMagick里的一个命令
http://www.imagemagick.com.cn/download.html这里有下载
下载地址:http://www.imagemagick.com.cn/download/ImageMagick-6.2.7-6-Q16-windows-static.exe
echox http://www.vkill.net/tools/EchoX_2.5.rar
sed http://www.vkill.net/tools/sed_4.1.4b.rar
[ 本帖最后由 ganjie 于 2009-3-1 00:08 编辑 ]
作者: Batcher 时间: 2009-2-28 23:42
能否提供一下identity的下载?
作者: ganjie 时间: 2009-2-28 23:50
identify 命令一定要单独在一行,而且不能在同一行接上其它语句,如:
identify -format "%%wx%%h" %%i 接上一行!
-这样的话 identify 就不能起到获取图片宽高的作用了
作者: ganjie 时间: 2009-2-28 23:52
identity是ImageMagick里的一个命令
http://www.imagemagick.com.cn/download.html这里有下载
作者: Batcher 时间: 2009-2-28 23:53
再次建议提供代码中用到的所有第三方工具的下载地址。
作者: ganjie 时间: 2009-2-28 23:56
下载地址:http://www.imagemagick.com.cn/download/ImageMagick-6.2.7-6-Q16-windows-static.exe
echox http://www.vkill.net/tools/EchoX_2.5.rar
sed http://www.vkill.net/tools/sed_4.1.4b.rar
[ 本帖最后由 ganjie 于 2009-3-1 00:07 编辑 ]
作者: Batcher 时间: 2009-3-1 00:11
- @echo off
- set "route=%cd%"
- for /f "delims=" %%i in ('dir /b "%route%\*.jpg"') do (
- set /p=src=%%i <nul
- for /f "delims=" %%a in ('identify -format "%%wx%%h" %%i') do (
- set /p=%%a <nul
- )
- echo 接上一行!
- )
- pause
复制代码
作者: ganjie 时间: 2009-3-1 08:41
测试成功,谢谢了!原来除了要用到set /p 还有用上for语句
[ 本帖最后由 ganjie 于 2009-3-1 08:45 编辑 ]
作者: Batcher 时间: 2009-3-2 09:32 标题: 回复 8楼 的帖子
如果有人帮你解决了问题,建议进行以下操作:
1、修改帖子标题,在标题最前面注明:【已结】
2、给竭尽全力帮你的人、正确回答问题的人加分(你自己的积分不会减少)以示感谢,虽然大家来论坛是为了学习而不是为了积分,但加分聊表谢意总是或多或少能够让花费了时间和精力无私帮助你的人略感欣慰。
3、如果你是在别人的提示下自己写出了代码,请把自己的方法贴出来跟大家分享一下,也许他人可以帮你指出代码中的不足之处、告诉你如何提高执行效率等,有交流才能更快地进步。
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |