nohup 命令在 CentOS(以及其他类 Unix 系统)中用于在用户退出登录后继续运行指定的命令或脚本。其基本语法如下:
nohup [选项] [命令] [参数...] &
-h:显示帮助信息。-V:显示版本信息。-c:不使用启动文件,直接执行指定的命令。基本用法:
nohup command [arguments] &
例如,运行一个名为 my_script.sh 的脚本:
nohup ./my_script.sh &
将输出重定向到文件:
默认情况下,nohup 会将标准输出和标准错误输出重定向到当前目录下的 nohup.out 文件。你可以显式指定输出文件:
nohup command [arguments] > output.log 2>&1 &
这里,> 将标准输出重定向到 output.log,2>&1 将标准错误输出重定向到标准输出(即 output.log)。
指定工作目录:
使用 -c 选项可以指定命令的工作目录:
nohup -c /path/to/directory command [arguments] &
后台运行:
使用 & 符号将命令放入后台运行。
假设你有一个名为 my_server.sh 的脚本,你想在后台运行它,并将输出重定向到 server_output.log 文件:
nohup ./my_server.sh > server_output.log 2>&1 &
这样,即使你退出登录,my_server.sh 也会继续运行,并且其输出会被记录在 server_output.log 文件中。
nohup 运行的命令不会受到终端关闭的影响。nohup.out 文件可能会变得非常大,因此建议显式指定输出文件。& 符号将命令放入后台运行时,可以使用 jobs 命令查看后台任务的状态。希望这些信息对你有所帮助!如果有其他问题,请随时提问。