在 Linux 中,nohup 命令用于在后台运行程序,即使关闭终端或注销,程序也会继续运行
使用 nohup 命令启动进程:
nohup your_command &
这将在后台运行 your_command,并将输出重定向到名为 nohup.out 的文件。& 符号表示将进程放入后台运行。
查看 nohup 进程:
使用 ps 命令结合 grep 来查找特定的 nohup 进程:
ps aux | grep your_command
这将显示与 your_command 相关的所有进程。请注意,这也会显示 grep 命令本身的进程。要排除这个结果,可以使用以下命令:
ps aux | grep '[y]our_command'
终止 nohup 进程:
首先,使用 ps 和 grep 命令找到要终止的进程的进程 ID(PID):
ps aux | grep '[y]our_command'
然后,使用 kill 命令终止该进程:
kill PID
将 PID 替换为实际的进程 ID。如果进程无法正常终止,可以使用 kill -9 命令强制终止:
kill -9 PID
重新连接到 nohup 进程:
如果您想重新连接到正在运行的 nohup 进程,可以使用 screen 或 tmux 等终端复用器。这些工具允许您创建多个终端会话,并在需要时重新连接。
例如,使用 screen:
安装 screen(如果尚未安装):
sudo apt-get install screen
启动新的 screen 会话:
screen -S your_session_name
在新的 screen 会话中运行您的命令,然后按 Ctrl + A 再按 D 以分离会话。此时,您的进程将在后台继续运行。
要重新连接到会话,请运行:
screen -r your_session_name
通过这些方法,您可以在 Linux 中有效地管理 nohup 进程。