【发布时间】:2021-06-05 07:02:11
【问题描述】:
我一直在尝试使用 PowerShell 命令来创建在批处理文件中工作的快捷方式,但无法将我需要的引号实际放入快捷方式中。我在其他批处理文件中使用过这个命令就好了,但是引号把它搞砸了。我试过“”、“””、“””、“、", \”、`”,几乎所有我能想到的变体都没有奏效。我需要这样的快捷方式:
"C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --connect "mullvad.ovpn"
这就是我一直在尝试的,当然还有很多变化:
powershell "$s=(New-Object -COM WScript.Shell).CreateShortcut('C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\OpenVPN GUI.lnk');$s.TargetPath= '"C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --connect "mullvad.ovpn"';$s.Save()"
但它要么只是为此创建了一个快捷方式:
"C:\Program Files\OpenVPN\bin\openvpn-gui.exe --connect mullvad_us_chi.ovpn"
或者,更常见的是,由于我的各种尝试的语法错误,它会出错。那么如何让 PowerShell 在这里做我想做的事呢?
【问题讨论】:
标签: powershell batch-file escaping quotes