当您需要确保某个命令或脚本持续在后台运行,即使终端关闭也不会中断时,nohup
命令便成了您的得力助手。以下是其基本用法和示例,帮助您更好地理解和使用它。
基本语法:
nohup command [options] &
示例:
- 基本用法:
在后台运行一个脚本:
nohup ./my_script.sh &
- 指定输出文件:将标准输出和错误输出重定向到 output.log 文件:
nohup ./my_script.sh > output.log 2>&1 &
- 后台运行并忽略输出:将标准输出和错误输出全部忽略:
nohup ./my_script.sh > /dev/null 2>&1 &
- 后台运行并记录输出到文件:只记录标准输出到 output.log 文件:
nohup ./my_script.sh > output.log &
说明:
command_to_run
:您希望在后台运行的命令或脚本。&
:将命令放入后台运行。nohup
:no hang up 的缩写,意为“不离线”。它将命令的标准输出重定向到nohup.out
文件,除非您自定义输出文件。2>&1
:表示将标准错误输出(2)重定向到标准输出(1)。/dev/null
:一个特殊的设备文件,任何写入其中的数据都会被丢弃。
使用 nohup
命令,您可以确保即使退出终端或断开 SSH 连接,命令或脚本仍会在后台持续运行。这为那些需要长时间运行的任务提供了极大的便利。