我知道这可能是一个相对无意义的问题,但我很好奇为什么exec false
就像关闭终端一样exit
。
我还想知道这是否是关闭终端的可接受的方式。
答案1
exec false
正在通过执行命令false
(这里不是内置的 shell,而是中首先出现的/bin/false
任何可执行文件)替换当前 shell,然后快速退出。如果 shell 是终端仿真器中运行的最顶层进程,则其中不再有进程在运行,因此终端仿真器已关闭。false
PATH
这是一种可以接受的关闭终端的替代方法,就像许多类似的命令一样:
exec true
exec sleep 0
exec echo
...
也可以看看:exec 命令做什么