我在以下Windows Server 2k3批处理命令中遗漏了一些关于转义字符串或空格的内容(显而易见?)。
FORFILES -m *.wsp -c "CMD /C C:\Program^ Files\Common^ Files\Microsoft^ Shared\web^ server^ extensions\12\bin\stsadm.exe^ -o^ addsolution^ -filename^ @FILE"
导致以下错误
'C:\ Program Files \ Common Files \ Microsoft Shared \ web server extensions \ 12 \ bin \ stsadm.exe -o addsolution -filename“foobar.wsp”'无法识别为内部或外部命令,可操作程序或批处理文件。
但我无法弄清楚原因。我正在工作Mr. Simon Sheppard's fine documentation
答案 0 :(得分:10)
需要引用路径,并且必须转义引号。
FORFILES -m *.wsp -c "CMD /C ^0x22C:\Program^ Files\Common^ Files\Microsoft^ Shared\web^ server^ extensions\12\bin\stsadm.exe^0x22 -o^ addsolution^ -filename^ @FILE"
一位同事建议使用十六进制“,我最终发现十六进制需要转义。
答案 1 :(得分:2)
另一个可能的答案是使用你通过dir / X获得的旧8.3名称。
喜欢:C:\ PROGRA~1而不是C:\ Program Files。