![批处理文件循环包含太多文件](https://linux22.com/image/1505814/%E6%89%B9%E5%A4%84%E7%90%86%E6%96%87%E4%BB%B6%E5%BE%AA%E7%8E%AF%E5%8C%85%E5%90%AB%E5%A4%AA%E5%A4%9A%E6%96%87%E4%BB%B6.png)
我正在使用批处理文件通过 7-zip 将文件压缩到单独的存档中。批处理文件包含以下行:
FOR %%A IN (*.xls) DO "c:\program files\7-zip\7z.exe" u -mx9 -m0=lzma2:d16m "%%~nA.7z" "%%A"
不幸的是,由于 CMD 的性质,这一行会压缩两个*.xls
文件和 *.xlsx
我无意的文件。
我如何让它忽略*.xlsx
-files?
答案1
您需要做的就是测试文件扩展名是什么
for %%A in (*.xls) do if /i "%%~xA"==".xls" (
"c:\program files\7-zip\7z.exe" u -mx9 -m0=lzma2:d16m "%%~nA.7z" "%%A"
)