如何在 PowerShell 中转义 space?
How to escape space in PowerShell?
我在 PowerShell 中 运行 这个命令
Start-Process -FilePath 'C:\Program Files\Typora\Typora.exe' -ArgumentList 'C:\Users\Administrator\Desktop\Hello world.md'
但是 Typora 说
C:\User\Administrator\world.md does not exist
看起来像 PowerShell 执行
Start-Process -FilePath 'C:\Program Files\Typora\Typora.exe'
-ArgumentList 'C:\Users\Administrator\Desktop\Hello' 'world.md'
我想转义 space 但单引号不起作用...
PowerShell 版本:5.1.19041.610
尝试在 powershell 中添加 ` 以转义空格:
Start-Process -FilePath 'C:\Program Files\Typora\Typora.exe' -ArgumentList 'C:\Users\Administrator\Desktop\Hello`world.md'
PowerShell 在调用外部可执行文件时可能无法正确引用字符串。参见
- Curl in PowerShell with custom cookie file
- PowerShell or CMD errors on space in file path
因此,要解决此问题,您需要通过正确转义将文字 "
传递给 exe 文件
Start-Process -FilePath 'C:\Program Files\Typora\Typora.exe' `
-ArgumentList '"C:\Users\Administrator\Desktop\Hello world.md"'
我在 PowerShell 中 运行 这个命令
Start-Process -FilePath 'C:\Program Files\Typora\Typora.exe' -ArgumentList 'C:\Users\Administrator\Desktop\Hello world.md'
但是 Typora 说
C:\User\Administrator\world.md does not exist
看起来像 PowerShell 执行
Start-Process -FilePath 'C:\Program Files\Typora\Typora.exe'
-ArgumentList 'C:\Users\Administrator\Desktop\Hello' 'world.md'
我想转义 space 但单引号不起作用...
PowerShell 版本:5.1.19041.610
尝试在 powershell 中添加 ` 以转义空格:
Start-Process -FilePath 'C:\Program Files\Typora\Typora.exe' -ArgumentList 'C:\Users\Administrator\Desktop\Hello`world.md'
PowerShell 在调用外部可执行文件时可能无法正确引用字符串。参见
- Curl in PowerShell with custom cookie file
- PowerShell or CMD errors on space in file path
因此,要解决此问题,您需要通过正确转义将文字 "
传递给 exe 文件
Start-Process -FilePath 'C:\Program Files\Typora\Typora.exe' `
-ArgumentList '"C:\Users\Administrator\Desktop\Hello world.md"'