如何为Mac上运行的Python脚本进程设置自定义名称以实现按名启停
macOS 下为 Python 进程设置自定义名称的实现方案
完全可以实现自定义进程名,以下是两种常用的稳定方案:
方案1:使用 setproctitle 库修改进程名(推荐)
这是兼容性最好、后续维护最方便的方案:
- 首先安装第三方库:
pip install setproctitle - 在你的Telegram bot脚本的开头加入如下代码:
from setproctitle import setproctitle # 将参数替换为你想要的专属进程名,例如 tg_message_bot setproctitle("tg_message_bot")
- 验证方式:启动脚本后,既可在活动监视器中直接看到自定义的进程名,也可通过终端命令
ps aux | grep tg_message_bot快速匹配到对应进程。
方案2:无依赖的启动时指定名称
如果不想修改原有代码、也不想安装额外依赖,可以在启动脚本时通过exec -a参数直接指定进程名:exec -a tg_message_bot python3 你的bot脚本文件路径.py
该方式仅修改启动命令即可生效,支持后台启动场景。
按名称管理进程的实现方法
设置完自定义进程名后,你可以直接用命令行或者封装脚本实现进程的杀死、重启操作:
- 杀死指定进程命令:
pkill tg_message_bot,需要强制杀死可改为pkill -9 tg_message_bot - 重启进程的shell脚本示例,可保存为
restart_tg_bot.sh使用:
#!/bin/bash # 终止现有bot进程 pkill tg_message_bot # 等待进程完全退出 sleep 2 # 后台启动新的bot进程,替换为你实际的脚本路径 nohup exec -a tg_message_bot python3 /home/xxx/tg_bot.py > /dev/null 2>&1 & echo "Telegram bot 已重启完成"
给脚本赋予执行权限即可直接运行:chmod +x restart_tg_bot.sh
内容的提问来源于stack exchange,提问作者NONAMA
相关产品推荐
相关产品推荐

