记录centos中操作(查找、结束、批量)进程以及crontab定时写法的知识

环境:vps,centos7,python3。

近期写了个python程序,用青龙面板在centos上运行。程序中有while无限循环,但是我在青龙中设置了定时任务(每隔半小时运行一次),于是造成了进程中有多个python3 xxx.py程序在运行。

任务:结束这些进程。

一、首先,在青龙面板中停止并删除定时任务。

二、远程登录VPS。

(1)查看运行的python进程。命令如下:

复制代码
ps -ef | grep python3

结果为下图(举例):

第一个红色箭头是进程的PID,第二个红色箭头是进程的PPID。

(2) 结束进程

复制代码
kill -9 PID

(3)因为每半小时运行一次无限循环的python程序(example.py),所以会有多个PID,想批量结束。

复制代码
kill $(ps aux | grep 'python3 example.py' | grep -v grep | awk '{print $2}')

参考文章:linux 怎么批量kill掉挂载运行python 某个.py文件的端口_如何批量kill执行中的python-CSDN博客

Linux ps 命令 | 菜鸟教程

Linux kill 命令 | 菜鸟教程

(4)进行上面的操作后,不知道为何,还是没有批量kill到好几个python3 example.py进程,于是最后,我重启了VPS。

复制代码
shutdown -r now 立刻重启(root用户使用)

重新登陆后,就没有python3 example.py进程了。

三、重新设置青龙的定时任务,设置成一年执行一次

crontab写法如下:

复制代码
0 1 1 1 *

有一个很好的ToolTT在线工具箱,可以在页面上测试定时的写法,参考文章如下:

在线crontab 每月1号凌晨1点执行一次解析验证 - ToolTT在线工具箱

相关推荐
三言老师2 小时前
K8s集群运行时自动化运维全覆盖落地实操(下)
linux·运维·服务器·网络
ltl3 小时前
HAProxy HTX 与 HTTP 路径:内部表示、改写落点与协议分叉
linux
ltl3 小时前
可拆分 OS:CXL 内存池化如何动摇本地 DRAM 假设
linux
ltl3 小时前
Tetragon 强制执行:Override 与 SIGKILL 各自保证什么
linux
lengjingzju3 小时前
编译与调试完全指南—第6章 性能分析工具
linux
躺不平的理查德4 小时前
嵌入式 Linux 系统移植与 SD 卡量产镜像制作
linux·运维·服务器
一直走下去-明5 小时前
centos7无法安装tcpreplay
linux·运维
吹什么轩5 小时前
linux网络:TCP套接字基础
linux·网络·tcp/ip
IT大白鼠6 小时前
n8n工作流自动化平台技术架构与应用价值评估
运维·架构·自动化·n8n
anxiao_m6 小时前
园区数字孪生怎么搭建?主流方案与服务商深度对比
大数据·运维·人工智能