Windows命令提示:转义引号内的特殊字符
我想使用以下命令将tar.gz文件与7-Zip解压:Windows命令提示:转义引号内的特殊字符,windows,command-line,special-characters,quotations,Windows,Command Line,Special Characters,Quotations,我想使用以下命令将tar.gz文件与7-Zip解压: forfiles /M *tar.gz /C "cmd /c "C:\Program Files\7-Zip\7z" e @path" 但是我不能让它工作,因为程序文件中有空格。我怎样才能逃脱呢 更新: 我的替代方案是: set 7ZPath="C:\Program Files\7-Zip\7z" %7ZPath% e *.tar.gz forfiles/M*tar.gz/C“cmd/C”%ProgramFiles%\7-Zip\7z“e
forfiles /M *tar.gz /C "cmd /c "C:\Program Files\7-Zip\7z" e @path"
但是我不能让它工作,因为程序文件中有空格。我怎样才能逃脱呢
更新:
我的替代方案是:
set 7ZPath="C:\Program Files\7-Zip\7z"
%7ZPath% e *.tar.gz
forfiles/M*tar.gz/C“cmd/C”%ProgramFiles%\7-Zip\7z“e@path”必须将forfiles命令字符串中的引号转义为\“
这将使代码更健壮,如果它工作的话-使用环境变量而不是硬编码使代码更具可移植性。但这并不能解决引号不齐导致空白的问题。
forfiles /M *tar.gz /C "cmd /c \"C:\Program Files\7-Zip\7z\" e @path"