linux

如何用nohup后台运行脚本

小樊
67
2025-05-05 06:32:31
栏目: 编程语言

使用 nohup 命令可以在后台运行脚本,并且不受终端关闭的影响。以下是使用 nohup 后台运行脚本的步骤:

  1. 编写脚本:首先,确保你有一个要运行的脚本文件。例如,假设你的脚本名为 my_script.sh

  2. 赋予执行权限(如果尚未赋予):

    chmod +x my_script.sh
    
  3. 使用 nohup 运行脚本

    nohup ./my_script.sh &
    

    解释:

    • nohup:表示“no hang up”,即使终端关闭,进程也会继续运行。
    • ./my_script.sh:运行你的脚本。
    • &:将命令放入后台运行。
  4. 查看输出: 默认情况下,nohup 会将输出重定向到一个名为 nohup.out 的文件中。你可以查看这个文件来获取脚本的输出:

    tail -f nohup.out
    
  5. 停止后台进程: 如果你需要停止后台运行的脚本,可以使用 ps 命令找到进程ID(PID),然后使用 kill 命令终止它:

    ps aux | grep my_script.sh
    kill -9 <PID>
    

    其中 <PID> 是脚本的进程ID。

示例

假设你有一个名为 test.sh 的脚本,内容如下:

#!/bin/bash
echo "Hello, World!"
sleep 10

按照上述步骤操作:

  1. 赋予执行权限:

    chmod +x test.sh
    
  2. 使用 nohup 后台运行:

    nohup ./test.sh &
    
  3. 查看输出:

    tail -f nohup.out
    
  4. 停止后台进程(如果需要):

    ps aux | grep test.sh
    kill -9 <PID>
    

通过这些步骤,你可以确保脚本在后台稳定运行,即使终端关闭也不会中断。

0
看了该问题的人还看了