nohup
(no hang-up)命令用于在Linux系统中运行命令,使其在用户退出登录后继续运行
-
使用
&
将命令放入后台运行: 在命令末尾添加&
符号,可以让命令在后台运行,而不是阻塞当前终端。例如:nohup your_command &
-
将输出重定向到文件: 默认情况下,
nohup
会将命令的输出发送到名为nohup.out
的文件中。你可以使用>
或>>
将输出重定向到其他文件。例如:nohup your_command > output.log 2>&1 &
这里,
>
将标准输出重定向到output.log
,2>&1
将标准错误重定向到标准输出,&
将命令放入后台运行。 -
使用
disown
命令: 如果你已经在前台运行了一个命令,可以使用disown
命令将其从当前shell会话中分离,使其在退出登录后继续运行。例如:your_command disown
-
使用
screen
或tmux
工具:screen
和tmux
是终端复用器,可以让你在一个终端窗口中运行多个终端会话。当你退出登录时,可以断开与screen
或tmux
会话的连接,稍后再重新连接以查看命令的输出。例如,使用screen
:screen -S your_session_name your_command # 按 Ctrl-A 然后按 D 断开与 screen 会话的连接
要重新连接会话,请运行:
screen -r your_session_name
通过这些方法,你可以更有效地使用nohup
命令,确保在退出登录后命令仍能继续运行。