%%A此时出乎意料
我想压缩一个包含文件的文件夹。因此,为了做到这一点,我需要循环遍历整个文件列表并执行 7za 命令。 (7zip命令行版本)
for /f %%A in ('"G:\Files Sample\zip\txt\*.t
xt"') do 7za -tzip "%%A.zip" "%%A"
但是Windows说这个命令无效。
错误消息是
%%A was unexpected at this time
如何克服这个问题?
I want to zip a folder containing files. So inorder to do that i need to loop through the entire file list and execute 7za command. (7zip command line version)
for /f %%A in ('"G:\Files Sample\zip\txt\*.t
xt"') do 7za -tzip "%%A.zip" "%%A"
However windows says that this command is not valid.
Error message is
%%A was unexpected at this time
How do i overcome this issue ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用批处理程序 (*.bat) 时使用
%%A
尝试删除一个
'%'
%%A
is used when you use a batch program (*.bat)try remove one
'%'
如果您从命令行执行此操作,则不必转义 %,因此
%a
就足够了。您只需使用批处理文件中的%%a
即可。另外,您想要选择文件而不是作为命令执行“G:\Files Sample\zip\txt\*.txt”,这就是
/f
开关与单引号结合使用的作用。完整的命令为:for %A in ("G:\Files Sample\zip\txt\*.txt") do 7za -tzip "%A.zip" "%A"
If you are doing it from the command line, you don't have to escape the %, so
%a
is sufficient. You only need to use%%a
from batch files.Also, you wanna be selecting the files instead of executing "G:\Files Sample\zip\txt\*.txt" as a command, which is what the
/f
switch does in combination with single quotes. The full command would be:for %A in ("G:\Files Sample\zip\txt\*.txt") do 7za -tzip "%A.zip" "%A"
在批处理文件中尝试此操作。
添加
/R
作为搜索所有子文件夹中的文件的选项。您可以在 ss64 找到对 cmd- 方法的很好的解释
Try this in a batch file.
Add
/R
as option to search for the files in all subfolder.A good explanation of cmd- methods you could find at ss64