让我更好地解释一下。如果我在Linux中运行命令并且在它完成之前会发生什么,你可以输入另一个命令我关闭终端。它还会执行命令吗?
答案 0 :(得分:2)
通常,您必须期望关闭终端会挂断您的命令。 但不要害怕! Linux也有解决方案!
要确保命令完成,请先使用nohup参数。只需将它放在您想要做的任何事情之前:
nohup ./some_program
nohup ./do_a_thing -frx -file input_file.txt
nohup grep "something" giant_list_of_files/* > temp_file.txt
nohup
命令代表“无挂断”,它将确保您执行的命令继续运行,即使您关闭终端也是如此。
答案 1 :(得分:1)
这取决于进程和您的环境(作业控制shell选项,VNC等)。但通常,没有。该过程将从操作系统获得“挂起”信号(消息),一旦收到该信号,将退出。
例如,nohup
命令安排进程忽略来自操作系统的挂起信号。有很多方法可以达到相同的效果。
答案 2 :(得分:1)
我会说它会在会议结束之前中止您的状态。
如果您想确保完成作业,则需要使用nohup命令。
了解nohups和守护进程(-d)......
一个好的链接是[link] What's the difference between nohup and a daemon?
答案 3 :(得分:0)
值得一看screen命令,屏幕命令可以从会话中分离长时间运行的进程(或程序或shell脚本),然后再将其附加回来。