温馨提示×

nohup命令在CentOS中如何使用

小樊
44
2025-03-05 16:28:46
栏目: 智能运维
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

nohup(no hang-up)命令在 CentOS 和其他 Unix-like 系统中用于在后台运行命令,即使关闭终端或断开连接,命令也会继续运行。以下是如何在 CentOS 中使用 nohup 命令的详细步骤和示例:

基本语法

nohup command [arguments] &
  • command:要运行的命令。
  • [arguments]:命令的参数。
  • &:将命令放入后台运行。

示例

假设你想在后台运行一个名为 my_script.sh 的脚本,并且希望即使关闭终端,脚本也会继续运行。

  1. 创建一个简单的脚本

    #!/bin/bash
    echo "Hello, World!"
    sleep 3600  # 让脚本运行1小时
    
  2. 赋予脚本执行权限

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

    nohup ./my_script.sh &
    

输出重定向

默认情况下,nohup 会将命令的输出重定向到当前目录下的 nohup.out 文件。如果你想将输出重定向到其他文件,可以使用 >>>

  • >:覆盖文件内容。
  • >>:追加到文件内容。

例如,将输出重定向到 output.log 文件:

nohup ./my_script.sh > output.log 2>&1 &

查看后台进程

你可以使用 ps 命令查看后台运行的进程。

ps aux | grep my_script.sh

终止后台进程

如果你想终止一个后台进程,可以使用 kill 命令。

  1. 查找进程ID

    ps aux | grep my_script.sh
    
  2. 终止进程

    kill -9 <PID>
    

注意事项

  • nohup 命令会忽略挂起信号(SIGHUP),因此即使关闭终端,命令也会继续运行。
  • 使用 & 将命令放入后台运行时,终端会立即返回提示符,你可以继续在终端中执行其他命令。
  • 确保脚本具有执行权限,并且路径正确。

通过以上步骤,你可以在 CentOS 中使用 nohup 命令在后台运行命令,并确保即使关闭终端,命令也会继续运行。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:如何使用nohup在CentOS中运行命令

0