Rya*_*yan 3 vbscript arguments escaping runas command-line-arguments
我有一个应用程序,我试图在Windows 7和Windows XP瘦客户端上升高,但我似乎无法让runas.exe cmd行正确.我知道我需要反斜杠转义字符,因此runas正确解释了空格.这在运行runas时使用反斜杠转义的单个参数时有效.这个场景是我发现的所有解决方案,然而它起作用,我需要发送多个参数,这些参数都是用反斜杠转义的,因为文件路径等因为空格而存在争议.以下是一些例子:
这些工作和预期的将提示管理员密码:
runas.exe /user:Administrator "C:\update_andon.exe autosetup /kiosktype:\"Andon Kiosk"\
runas.exe /user:Administrator "C:\update_andon.exe autosetup /directory:\"C:\Program Files\CIMS_Andon\Kiosk"\
当我开始添加我需要的其余参数(如下面的行)时,我收到runas帮助文本,表明存在问题:
runas.exe /user:administrator "C:\update_andon.exe autosetup /kiosktype:\"Andon Kiosk"\ /exename:\"eAndonKiosk.exe"\ /directory:\"C:\Program Files\CIMS_Andon\Kiosk"\ /repository:\"\\domain\sat\shared\repository\andon kiosk"\"
一种解决方案是一个接一个地运行每个参数,但我不认为这是一个解决方案,因为它是一个解决方法.我是否错过了将反斜杠与各种参数混合在一起的方式?我在哪里错过了更多的报价?
谢谢
它看起来像你的尾随引号,你没有正确地逃避它们.反斜杠用于逃避解释器查看下一个字符.对于您的尾随引号,您在引号后面加上反斜杠,这是不正确的.
来自帮助的例子
"notepad \"my file.txt\""
请注意,反斜杠在引号之前.您甚至可以尝试使用降价在堆栈交换中键入答案,因为您必须输入双\才能显示一个反斜杠
原始代码
runas.exe /user:administrator "C:\update_andon.exe autosetup /kiosktype:\"Andon Kiosk"\ /exename:\"eAndonKiosk.exe"\ /directory:\"C:\Program Files\CIMS_Andon\Kiosk"\ /repository:\"\\domain\sat\shared\repository\andon kiosk"\"
纠正的代码
runas.exe /user:administrator "C:\update_andon.exe autosetup /kiosktype:\"Andon Kiosk\" /exename:\"eAndonKiosk.exe\" /directory:\"C:\Program Files\CIMS_Andon\Kiosk\" /repository:\"\\domain\sat\shared\repository\andon kiosk\""
引用