nohup
命令用于在 Linux 中将命令或程序在后台运行,并且在终端关闭后仍然保持运行。
nohup命令
描述
nohup
命令用于将命令或程序以不受终端挂断影响的方式在后台运行。
语法
nohup command [arguments] &
参数
command
:要在后台运行的命令或程序。arguments
:传递给命令或程序的参数(如果有)。&
:将命令放到后台运行。
示例
-
将一个脚本文件在后台运行:
nohup ./script.sh &
-
将一个命令行程序在后台运行:
nohup ./program arg1 arg2 &
输出文件
nohup
命令会将命令或程序的标准输出和标准错误输出重定向到一个名为 nohup.out
的文件,默认情况下该文件位于当前目录。
你也可以使用重定向符号将输出定向到其他位置,如 /dev/null
,以避免生成输出文件:
nohup command > /dev/null 2>&1 &
注意事项
nohup
命令仅将命令或程序放到后台运行,并不影响其执行方式或功能。- 使用
nohup
后台运行的程序在终端关闭后仍然保持运行,但如果服务器重启,该进程也会被终止,因此需要其他方式来实现进程的长期运行。 - 使用
nohup
后台运行的程序无法再与终端交互,因此不适合需要与用户进行交互的场景。