nohup(no hang-up)命令在 Ubuntu 和其他 Unix-like 系统中用于在后台运行程序,使其在用户退出登录后仍然继续运行
nohup command-to-run &
其中,command-to-run 是您要在后台运行的命令,& 符号将命令放入后台执行。
nohup 会将命令的输出发送到名为 nohup.out 的文件中。如果您想将输出重定向到其他文件,可以使用以下语法:nohup command-to-run > output-file 2>&1 &
这里,> 将标准输出重定向到 output-file,2>&1 将标准错误重定向到标准输出,& 将命令放入后台执行。
忽略挂起信号:
nohup 的主要作用是使程序在用户退出登录后继续运行。为了实现这一点,nohup 会忽略挂起(SIGHUP)信号。这意味着即使您关闭终端或断开连接,程序也会继续运行。
查看后台进程:
要查看使用 nohup 运行的后台进程,可以使用 ps 命令。例如,要查找名为 my-command 的进程,可以运行:
ps -ef | grep my-command
nohup 运行的后台进程,您需要知道其进程 ID(PID)。可以使用 ps 命令找到 PID,然后使用 kill 命令终止进程。例如:kill -9 PID
其中,PID 是您要终止的进程的进程 ID。
总之,nohup 命令在 Ubuntu 中非常有用,可以让您在后台运行程序,即使您退出登录,程序也会继续运行。通过将输出重定向到文件,您可以轻松地跟踪程序的输出和错误。