windows for循环 批量查找文件并用winrar压缩并删除原文件
需求:因MSSQL2005备份无压缩功能,为节约空间对备份做压缩。
解决思路:查找备份目录下所有.bak备份文件压缩并删除原文件
命令如下:
FOR /R "D:\_SQL_DATA_BACK" %f in (*.bak) DO "C:\Program Files\WinRAR\WinRAR.exe" a -tk -ep1 -m5 -df -y "%f.rar" "%f"bat脚本如下:
@echo off FOR /R "D:\_SQL_DATA_BACK" %%f in (*.bak) DO "C:\Program Files\WinRAR\WinRAR.exe" a -tk -ep1 -m5 -df -y "%%f.rar" "%%f" pause注:%%是在批处理文件中变量符号,,如果在CMD执行的话就应该是一个%。批处理文件在被解析的时候其中一个%被过滤掉,所以才用两个。
for循环使用方法:
FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]
for /R [路径] %variable传参(bat脚本使用%%f,命令%f) in (set) do 命令[command-parameters]
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/63621.html