这个命令有什么作用?
exec bash -l
我发现这个命令是提醒文本文件的一部分,我写了一些关于如何创建ssh密钥和克隆git repo的说明,但我很久以前就写过了,我无法记住它是什么确实
答案 0 :(得分:14)
exec
执行指定的命令,替换当前进程而不是启动新的子进程。
如果您输入
bash -l
在shell提示符下,它将调用一个新的shell进程(-l
使其成为登录shell)。如果退出该shell进程,您将返回到原始shell进程。
输入
exec bash -l
表示新的shell进程替换当前的shell进程。它的资源密集程度可能略低。
这样做的原因可能是新shell设置了它的环境(通过阅读.bashrc
,.bash_profile
等)。
有关更多信息,请参阅bash文档:
exec
命令的文档。(您应该可以通过键入info bash
来阅读自己系统上的手册。)
答案 1 :(得分:1)
这将使用作为登录shell运行的新bash shell替换当前shell。