nohup(no hang-up)命令在Linux中用于在用户退出登录后继续运行指定的命令或程序。这对于需要在后台长时间运行的任务非常有用。以下是一些使用nohup命令的技巧:
nohup command &
command:要运行的命令。&:将命令放入后台运行。假设你想在后台运行一个Python脚本:
nohup python my_script.py &
默认情况下,nohup会将命令的输出重定向到一个名为nohup.out的文件中。你可以显式地指定输出文件:
nohup command > output.log 2>&1 &
>:将标准输出重定向到指定文件。2>&1:将标准错误输出重定向到标准输出(即output.log)。你可以使用ps命令来检查nohup运行的进程:
ps aux | grep nohup
如果你需要终止一个由nohup启动的进程,可以使用pkill或kill命令:
pkill -f my_script.py
# 或者
kill -9 <PID>
-f:根据命令行匹配进程。<PID>:进程ID。nohup运行多个命令如果你需要同时运行多个命令,可以将它们放在一个脚本中,然后使用nohup运行该脚本:
nohup bash -c 'command1; command2' &
通过这些技巧,你可以更有效地使用nohup命令来管理后台任务。