![如何通过命令行启动/打开名称中包含空格的文件/文件夹?](https://linux22.com/image/1340456/%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%90%AF%E5%8A%A8%2F%E6%89%93%E5%BC%80%E5%90%8D%E7%A7%B0%E4%B8%AD%E5%8C%85%E5%90%AB%E7%A9%BA%E6%A0%BC%E7%9A%84%E6%96%87%E4%BB%B6%2F%E6%96%87%E4%BB%B6%E5%A4%B9%EF%BC%9F.png)
我尝试使用start
命令提示符中的命令来打开文件和文件夹,但无法打开名称中包含空格的文件和文件夹。
我已尝试以下查询(在 上测试C:\Program Files
):
start C:\Program Files
start C:/Program\ Files
start C:/"Program Files"
start C:\"Program Files"
start "C:\Program Files"
start "C:/Program Files"
start C:/Program_Files
start C:/Program%20Files
但它们都不起作用。
答案1
您可以使用:
start "" "c:\program files\"
这是因为第一个参数用作窗口的标题,而且奇怪的是,它用双引号括起来。
编辑:
以下是关于它的一个来源: SS64
举个例子,如果您只是输入,start "title"
它就会打开一个新的 cmd 窗口,标题栏中带有标题“title”。
答案2
您特别需要使用吗start
?
您可以使用它explorer "c:\program files"
来获得您想要的效果。
答案3
如果您已经在当前目录中,您可以随时执行此操作。
C:\>cd "C:\Program Files"
C:\Program Files>start .
C:\Program Files>
答案4
使用 url 编码
// 首先从文件名分配基本路径
var basePath = Path.GetDirectoryName(doc.Filename);
this.BaseUri = new Uri($"file:///{basePath}"); // 添加 file:/// 前缀