[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] BAT如何按要求处理图片文件,然后压缩成zip格式文件?

有一批图片文件,如466021.jpg 46001306.jpg,4605879123.jpg等等,文件名前两个数字都是一样的,现在要求首先按文件名生成一个index.txt文件,每行的规则是:文件名,大小
466021.jpg,471595
46001306.jpg,537856
4605879123.jpg,56156
然后将所有图片文件和index.txt文件压缩成zip格式的压缩文件(使用winrar),放在d:\zp目录下,d盘没有zp目录就新建,压缩文件命名格式为图片名前两位+年月日+小时分钟秒

  1. @echo off
  2. set "rar=C:\Program Files\WinRAR\Rar.exe"
  3. set "char=46"
  4. (for %%a in (%char%*.jpg) do echo,%%a,%%~za)>index.txt
  5. md d:\zp\ 2>nul
  6. "%rar%" a -ag d:\zp\%char%.zip %char%*.jpg index.txt
复制代码
初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

能不能不用set "char=46"这句,而使用照片名前两位,因为有很多这样的文件夹下的文件啊

TOP

  1. @echo off
  2. set "rar=C:\Program Files\WinRAR\Rar.exe"
  3. (for %%a in (*.jpg) do set "char=%%a"&echo,%%a,%%~za)>index.txt
  4. md d:\zp\ 2>nul
  5. "%rar%" a -ag d:\zp\%char:~,2%.zip *.jpg index.txt
复制代码
初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

这样转换以后压缩文件名是rar格式的,而不是zip格式的,还是不行啊

TOP

回复 4# xxpinqz


    rar.exe不行,需要改成winrar.exe

TOP

[attach]7174[/attach]

TOP

出现了错误

TOP

终于成功了,谢谢

TOP

回复 9# zstjhh


    问题解决后,请编辑顶楼帖子在标题前面注明[已解决],并给回答者加分。

TOP

返回列表