我正在尝试让应用程序 tablacus explorer 打开文件夹路径。这适用于以下格式:
$exe = 'S:\Tools\explorer\TE64.exe'
Start-Process $exe -ArgumentList '"Tabs,Close other tabs" "Open,C:\Program Files"'
但是我真的很想将路径放在变量中(
$dir = 'C:\Program Files'
),而且我似乎无法正确理解引号,因此无法正确解释它。
我在MS博客上找到了两个解决方案:
$Args = @"
"Tabs,Close other tabs" "Open,$dir"
"@
Start-Process $exe -ArgumentList $Args
或
Start-Process $exe -ArgumentList """Tabs,Close other tabs"" ""Open,$dir"""
我发现有时你需要另一层报价。
就我而言,我必须在
-Arguments /v
中设置变量,所以我必须使用 \""
来做到这一点。
Start-Process `
-FilePath "Installer.exe" `
-Arguments "/s /qn /v""SOME_PARAM1=\""STRING_IN_PARAM\"" SOME_PARAM2=\""STRING_IN_PARAM\"""
-Wait ;
如果您的参数是常量字符串,则创建一个快捷方式并调用它。
将快捷方式的“目标”设置为:
"S:\Tools\explorer\TE64.exe" "Tabs,Close other tabs" "Open,C:\Program Files"
将您的快捷方式命名为“TE64”并在 powershell 中调用它,如下所示:
start-process S:\Tools\explorer\TE64.lnk
以下语法对我来说效果很好,试试这个:
-ArgumentList "\`"$($variable)\`""