在git for Windows的安装路径中,我找到了这3个exe:
./git-bash.exe
,
./bin/bash.exe
,
./bin/sh.exe
,
启动它们中的任何一个都会给我一个可用的终端。
第一个是安装创建的开始菜单中的默认快捷方式,第二个在VSCode文档中用于在VSCode中设置集成终端,第三个在ConEmu文档中提到。
它们之间有什么区别,我应该使用哪个?
答案 0 :(得分:0)
git-bash
是“ Git for Windows”的一部分,并提供类似于* nix bash的命令行环境。
Windows 10包括“ Windows子系统”,可以在Windows内部提供Linux环境(包括sh
和bash
,可以在Difference between sh and bash进行简短比较)
您可以将其中任何一个用于git。与您的同事一起使用可能是一个优势(如果您需要有关Shell或脚本的任何帮助)。
答案 1 :(得分:0)
Bourne-Again Shell或bash
是sh
的超集,也就是说,您在sh
中可以执行的任何操作也可以在bash
中完成。 Bash
具有more features,可以更轻松地编写脚本。
另一方面,Git bash
是msys
中包含的Git for Windows
shell,因为Windows本身不支持bash功能(除非您添加Windows Sub-sytem for Linux)。
答案 2 :(得分:0)
“ shell”是命令的解释器。当您在cmd和bash中键入相同的内容时,结果是不同的,因为它们是不同的解释器。示例包括cmd
,powershell
,sh
,bash
,zsh
等(bash
和zsh
都是更强大的版本(sh
)。在Windows上,这些shell作为.exe文件存在。双击它们将启动一个CLI窗口。此窗口是Windows提供的最低终端应用程序,没有正式名称。
“终端应用程序”是模拟过去的终端机的应用程序(带有监视器和键盘的设备,可让您与大型计算机进行通信)。它们提供了更好的UI功能,例如选项卡等。终端应用的示例包括Git Bash
,ConEmu
,VSCode
中的终端,新的Window Terminal
等。您可以打开其中的任何外壳。
回到原始问题:sh.exe
和bash.exe
是shell。如果您拥有自己的首选终端应用程序,则将使用它们。 git-bash.exe
是一个终端应用程序(一个非常基本的应用程序,名称为“ mintty”),它将自动打开bash shell。如果您拥有自己的首选终端应用程序(例如ConEmu
或新的Windows Terminal
),则无需使用git-bash.exe
。但是,git-bash.exe
确实包含一些环境设置。为了在您首选的终端中启动bash.exe
的最佳方法,您可以从ConEmu Doc那里获得一些启发。