当我使用git bash时,我不时会调用一个命令,这个命令位于我的$PATH
上(实际上是在我的%PATH%
上),但是如果命令位于一个文件夹中有空格的地方,则无法运行。
例如,如果程序在C:\Program Files\whatever\aCmd.exe
上,我在bash上键入aCmd
,则说“程序”不是有效的程序等。
我所做的是将程序重新安装在没有空格的文件夹中,但最近我的同事开始离开git-gui并使用git-bash并且反复出现的问题是“我如何执行aCmd”当我告诉他们重新安装它们就像¬¬
问:如何在git-bash中执行位于带空格的文件夹中的命令?
只需将命令放在双引号之间执行,就像这样
"C:\Program Files\whatever\aCmd.exe"
要到达在其路径中包含空格的目录,您只需要用引号包装整个路径。它应该如下所示:
cd "/c/Some Folder/Some Other Folder/"
如果文件名中有特殊字符(空格,$,括号...),则需要在字符前面放置一个反斜杠,以便它按原样读取。
例如,如果你想直接从Bash运行程序notepad ++。exe,需要将路径指向:
C:\Program Files (x86)\Notepad++\
然后,您将在bash.rc文件中编写路径,如下所示:
export PATH=$PATH:/c/Program\ Files\ \(x86\)/Notepad++:<path2>:<path3>:...<pathn>:
请注意引用空格和括号的反斜杠。
您甚至可以在bash.rc文件的下一行添加一行:
alias npp=notepad++
这将创建一个快捷方式,允许您直接键入Bpp进入Bash,而不必每次都输入完整的程序名称notepad ++。
我是一个总菜鸟,刚刚开始编码4天前,虽然我发现这个问题最好的网站如下:http://www.grymoire.com/unix/Quote.html
希望这可以帮助! :d
git-bash中的命令接受双引号内的路径
"C:\Program Files\whatever\aCmd.exe"
或反斜杠以逃避空白区域
c/Program\ Files/whatever/aCmd.exe
希望能帮助到你!