Windows系统GitBash中用start命令打开含空格文件夹却启动CMD求助
Fix: GitBash
start Opens CMD Instead of "New folder" 我懂你在GitBash里碰到的这个糟心事——本来想用start命令打开带空格的文件夹"New folder",结果愣是弹出了CMD窗口,完全不是想要的结果。别着急,咱们试试这几个靠谱的解决办法:
方法1:用/d参数+双引号(最推荐)
Windows的start命令如果要定位到文件夹,加上/d参数能明确告诉它“这是要打开的目录”,再用双引号把带空格的路径包起来(GitBash会把双引号完整传递给Windows的命令解析器,不会乱拆路径):
start /d "New folder"
执行这个命令,目标文件夹就会直接弹出来,再也不会启动CMD了。
方法2:GitBash风格的空格转义
你也可以用GitBash的方式处理空格,在空格前加反斜杠转义:
start New\ folder
这个方法简单,但如果路径里有特殊字符或者层级更深,可能不如第一种稳妥,适合简单路径场景。
方法3:直接调用资源管理器(兜底方案)
要是上面两种方法都没解决问题,直接调用Windows的资源管理器绝对好使——毕竟打开文件夹本来就是它的本职工作:
explorer.exe "New folder"
为啥原来的操作会触发CMD?
当你直接输入start New folder(没加引号),Windows的start命令会把New当成要启动的程序,folder当成参数,但系统里没有叫New的程序,就默认启动CMD了。就算你用单引号start 'New folder'也不行——GitBash会把单引号当成自己的语法处理,传递给Windows的其实是不带引号的New folder,结果还是一样。这就是为啥必须用双引号,它能让Windows正确识别整个带空格的路径。
内容的提问来源于stack exchange,提问作者Joe
相关产品推荐
相关产品推荐

