bash -l 是做什么的,为什么找不到 ssh?

bash -l 是做什么的,为什么找不到 ssh?

我在 Windows 7 盒子中安装了 GitBash,我试图找出为什么运行:

bash -l ssh

结果是

Welcome to Git (version 1.9.0-preview20140217)

Run 'git help git' to display the help index.
Run 'git help <command>' to display help for specific commands.
bash: /bin/ssh: No such file or directory**

如果我这样做bash -l并且登录 ssh 后一切正常,那么bash -l到底是做什么的呢?

PS:我在这里问这个问题是因为我想知道它的bash - l作用,但我不明白为什么我不能让它在 GitBash 上工作。

答案1

bash -l调用登录 shell。

bash文档来看,调用 Bash:

-l

使该 shell 的行为就像是通过登录直接调用的一样。当 shell 是交互式的时,这相当于使用“exec -l bash”启动登录 shell。当 shell 非交互式时,将执行登录 shell 启动文件。 “exec bash -l”或“exec bash --login”将用 Bash 登录 shell 替换当前 shell。有关登录 shell 的特殊行为的描述,请参阅 Bash 启动文件。

相关内容