我有这个密码:;d#se#&4~75EY(H[SM"%cznGB
。
我需要在自动创建的命令行命令中使用它。
(在 TFS Release pipeline 中使用它,创建一个虚拟目录,这个密码属于一个服务用户,并保存在全局变量中作为机密输入,当 TFS 创建命令时,将该密码字符串放在双引号中)。
我很难转义其中的特殊字符。
我尝试过的方法是通过^
转义所有字母数字字符,通过重复%
和"
字符进行转义。但到目前为止,没有成功:(
以下是失败的尝试列表。
;d#se#&4~75EY^(H[SM""%%cznGB
;d#se#&4~75EY(H[SM\"%%cznGB
^;d^#se^#^&4^~75EY^(H^[SM""%%cznGB
^;d^#se^#^&4^~75EY^(H^[SM\"^%cznGB
^;d^#se^#^&4^~75EY^(H^[SM\"%%cznGB
^;d^#se^#^&4^~75EY^(H^[SM""^%%cznGB
;d#se#&4~75EY(H[SM"^^^%%cznGB
;d#se#&4~75EY(H[SM"^^^^%%cznGB
;d#se#&4~75EY(H[SM^""^%%cznGB
^;d^#se^#^&4^~75EY^(H^[SM^""^%%cznGB
^;d^#se^#^&4^~75EY^(H^[SM^""%%cznGB
;d#se#&4~75EY(H[SM""%%cznGB
你能帮我找到正确的转义字符串,以便在批处理或CMD中作为内联命令使用吗?
在任何人因为我发布了密码而对这个问题投反对票之前,我已经编辑了许多部分。只是说一下 :)
更新:
如我在问题中提到的,TFS 创建一个命令文本来将虚拟文件夹访问凭据设置为 IIS,用于特定的 Web 应用程序。日志显示命令文本如下。
"C:\WINDOWS\system32\inetsrv\appcmd.exe" set vdir /vdir.name:"appfolder/Files" -physicalPath:"\\servername\virtualfolder" -userName:"sa_user@domain.com" -password:";d#se#&4~75EY(H[SM"%cznGB"
我输入的密码在此输出中与原始密码相同。
"
不需要转义。百分号通过加倍来转义,其他特殊字符(例如你的示例中只有&
)则需要在前面加上^
。当然,这都取决于tfs
如何处理字符串... - Stephan