nohup
(no hang-up的缩写)是一个在Linux和Unix系统中用于在后台运行命令的实用程序,即使用户退出登录或关闭终端,它也能确保进程继续运行。nohup
的主要作用有以下几点:
防止挂起:当用户退出登录或关闭终端时,通常会发送一个SIGHUP信号给所有与该终端关联的进程,导致它们终止。使用nohup
可以阻止这种挂起行为。
忽略挂起信号:nohup
命令会忽略SIGHUP信号,使得后台运行的进程不会因为终端关闭而终止。
输出重定向:nohup
默认会将命令的输出重定向到一个名为nohup.out
的文件中,除非指定了其他输出文件。这样可以确保即使终端关闭,命令的输出也不会丢失。
后台运行:nohup
命令会在后台运行指定的进程,不会占用终端界面,用户可以继续在终端中执行其他命令。
使用nohup
的基本语法如下:
nohup command [arguments] &
其中,command
是要执行的命令,arguments
是命令的参数,&
表示将命令放入后台运行。
例如,如果你想在后台运行一个名为my_script.sh
的脚本,并且希望即使关闭终端,脚本也能继续运行,可以使用以下命令:
nohup ./my_script.sh &
这将在后台运行my_script.sh
脚本,并将输出重定向到nohup.out
文件中。