我在使用 gzip.exe 时遇到以下问题,无论是来自 UnxUtils 还是来自 GnuWin32:
set gzip=.\util\gzip.exe
%gzip% test.txt
%gzip% test2.txt
第二个 gzip 命令将发出如下警告:
gzip: .\util\gzip.exe.gz already exists; do you wish to overwrite (y or n)?
所以:gzip 尝试压缩自身(并且它仍然压缩 test2.txt)。
就像命令行是: .\util.gzip.exe .\util.gzip.exe test2.txt
.
但是,当在我的批处理中我的变量未命名为 gzip 时,它可以正常工作。
set gzip_prg=.\util\gzip.exe
%gzip_prg% test.txt
%gzip_prg% test2.txt
我完全不明白变量名的选择如何影响扩展后运行的命令行。
简而言之,当我更改变量名称时,我的批处理脚本的行为方式不同!
有人能解释一下这种现象吗?
最佳答案
关于gzip - 任何人都可以解释 cmd.exe 和 gzip 的这种奇怪的变量扩展行为吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6249079/