nohup(no hang-up)命令是 Linux 系统中用于在后台运行程序的命令,即使关闭终端或断开连接,程序也会继续运行
使用 nohup 命令启动程序:
nohup your_command & 其中,your_command 是要执行的命令。& 符号将命令放入后台运行。
将输出重定向到文件:
默认情况下,nohup 会将程序的输出发送到名为 nohup.out 的文件。你可以使用以下命令将输出重定向到其他文件:
nohup your_command > output_file 2>&1 & 这里,output_file 是你希望将输出保存的文件名。2>&1 表示将标准错误(2)重定向到标准输出(1),& 符号将命令放入后台运行。
使用 disown 命令:
如果你已经启动了一个程序,可以使用 disown 命令将其从当前 shell 的作业列表中移除,以防止在关闭终端时收到挂起信号:
disown %job_number 其中,job_number 是作业编号,可以通过 jobs 命令查看。
使用 screen 或 tmux 工具:
screen 和 tmux 是终端复用器,可以让你在一个终端窗口中运行多个会话。当你使用这些工具时,即使关闭终端或断开连接,程序也会继续运行。要使用这些工具,请先安装它们(如果尚未安装),然后按照以下步骤操作:
启动 screen 或 tmux 会话:
screen 或
tmux 在新会话中运行你的命令,然后按 Ctrl-A(对于 screen)或 Ctrl-B(对于 tmux),接着按 D 键将会话分离并返回到原始终端。
若要重新连接到会话,请使用以下命令:
对于 screen:
screen -r session_id 对于 tmux:
tmux attach -t session_id 其中,session_id 是会话ID,可以通过 screen -ls 或 tmux ls 命令查看。
通过以上方法,你可以使用 nohup 命令和其他工具来保证 Linux 任务的可靠性。