Windows services Windows Server 2003在批处理脚本中调用secedit生成;C:\Program";系统重新启动时
在执行中Windows services Windows Server 2003在批处理脚本中调用secedit生成;C:\Program";系统重新启动时,windows-services,batch-file,windows-server-2003,Windows Services,Batch File,Windows Server 2003,在执行中 secedit/configure/db%~1\tomcat.sdb”/cfg%~1\2003.inf”/log%~1\dtomcat.log”/quiet 其中 %~1==C:\Program Files\myDirectory\mySubDirectory\mySuperSubDirectory 将生成一个名为“C:\Program”的文件,该文件中包含用于调用的输出 secedit/? 我很好奇为什么会发生这种情况,因为安装新产品后,启动某些服务(例如PostGres wind
secedit/configure/db%~1\tomcat.sdb”/cfg%~1\2003.inf”/log%~1\dtomcat.log”/quiet
其中
%~1==C:\Program Files\myDirectory\mySubDirectory\mySuperSubDirectory
将生成一个名为“C:\Program”的文件,该文件中包含用于调用的输出secedit/?
我很好奇为什么会发生这种情况,因为安装新产品后,启动某些服务(例如PostGres windows服务)非常困难。您需要将路径名括在引号中: “C:\Program Files\myDirectory\mySubDirectory\mySuperSubDirectory”
“程序文件”中的空格被视为分隔符。您需要将路径名括在引号中: “C:\Program Files\myDirectory\mySubDirectory\mySuperSubDirectory”
“程序文件”中的空格被视为分隔符。您似乎在以下几个位置缺少引号:
secedit /configure /db "%~1\tomcat.sdb" /cfg "%~1\2003.inf" /log "%~1\dtomcat.log" /quiet
^ ^ ^
您似乎在以下几个地方缺少引号:
secedit /configure /db "%~1\tomcat.sdb" /cfg "%~1\2003.inf" /log "%~1\dtomcat.log" /quiet
^ ^ ^
谢谢你的建议,但是这个解决方案失败了,因为mySuperSubDirectory末尾有额外的“.”+1不管怎样:)@Woot4Moo-Ah-答案是系统暂停指出的每个%之前缺少的引号。感谢您的建议,但是由于额外的“'位于mySuperSubDirectory的末尾+1不管怎样:)@Woot4Moo-Ah-答案是系统暂停指出的每个%之前缺少的引号。谢谢,这非常有效地解决了这个问题。这就是我在*nix和*nix之间切换时发生的情况windows@Joey:您可以反斜杠转义空格,而不是使用引号。(只是说)你确实可以。但我想,如果命令行包含可能包含空格的变量,您将始终使用引号。你不会在那里搜索和替换空间。谢谢,这非常有效地解决了这个问题。这就是我在*nix和*nix之间切换时发生的情况windows@Joey:您可以反斜杠转义空格,而不是使用引号。(只是说)你确实可以。但我想,如果命令行包含可能包含空格的变量,您将始终使用引号。您不会在其中搜索并替换空格。