欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > Linux 使用命令行实现重启 python 脚本

Linux 使用命令行实现重启 python 脚本

2025/2/7 15:34:41 来源:https://blog.csdn.net/lycwhu/article/details/145480907  浏览:    关键词:Linux 使用命令行实现重启 python 脚本

可以通过命令行实现脚本的重启,方法有几种,具体取决于你的需求。以下是一些常见的方法:

1. 使用 nohup& 结合 kill 命令重启

  • 先使用 nohup 启动脚本并将其后台执行(例如:nohup python script.py &)。
  • 若需要关闭当前运行的脚本并重新启动,可以使用 kill 命令终止进程,然后再重新启动脚本。

具体步骤:

  • 查找脚本的进程 ID(PID):ps aux | grep script.py
  • 杀死进程:kill <PID>,或使用 killall python(如果你的系统只有一个 Python 脚本在运行)。
  • 重新启动脚本:nohup python script.py &

2. 使用 watch 命令自动重启脚本

如果你希望脚本自动重启,可以使用 watch 命令。这个命令会在一定的时间间隔内执行指定的命令:

watch -n <秒数> "python script.py"

这样会定期运行脚本,但无法完全替代你手动停止后再重启的需求。

3. 使用一个 Bash 脚本进行重启

可以编写一个简单的 Bash 脚本来重启 Python 脚本。比如,restart.sh 脚本:

#!/bin/bash
pkill -f script.py   # 终止当前的脚本
nohup python script.py &  # 重新启动脚本

然后你只需要运行这个 Bash 脚本,就可以实现重启功能。

bash restart.sh

4. 通过 systemd 或其他守护进程管理工具

如果你希望脚本在后台稳定运行并自动重启,可以将脚本配置为守护进程,例如使用 systemd

  1. 创建一个 systemd 服务单元文件(例如:/etc/systemd/system/my_script.service):

    [Unit]
    Description=My Python Script[Service]
    ExecStart=/usr/bin/python /path/to/script.py
    Restart=always
    User=<your_user>[Install]
    WantedBy=multi-user.target
    
  2. 启动并使服务在系统启动时自动运行:

    sudo systemctl daemon-reload
    sudo systemctl start my_script
    sudo systemctl enable my_script
    
  3. 重启脚本时,只需:

    sudo systemctl restart my_script
    

使用以上任何方法,你都可以实现通过命令行控制脚本的重启。根据你的实际需要选择合适的方式。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com