nohup 命令用于在后台运行程序,即使关闭终端或断开连接,程序也会继续运行。要将 nohup 命令的输出重定向到文件,可以使用以下语法:
nohup command > output_file 2>&1 &
这里的各个部分的含义如下:
nohup: 命令本身,表示 “no hang up”,即不挂起。command: 要在后台运行的命令。>: 重定向操作符,将标准输出(stdout)重定向到指定的文件。output_file: 输出文件的路径,例如 output.log。2>&1: 将标准错误(stderr)重定向到标准输出(stdout),这样错误信息也会被写入到 output_file 文件中。&: 将整个命令放入后台运行。例如,如果你想在后台运行一个名为 my_script.sh 的脚本,并将输出重定向到 output.log 文件,可以使用以下命令:
nohup ./my_script.sh > output.log 2>&1 &
这样,my_script.sh 的输出和错误信息都会被写入到 output.log 文件中,即使关闭终端或断开连接,脚本也会继续运行。