记录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在线工具箱

相关推荐
zho_uzhou7 分钟前
ubuntu服务端运行vue网页步骤
linux·服务器·vue.js·ubuntu
Archy_Wang_17 小时前
LVS+KeepAlived+Nginx实现企业级业务高可靠部署的实战教程
运维·nginx·lvs
张文君8 小时前
docker使用代理拉取镜像
运维·docker·容器
ltl9 小时前
纠删码原理与存储效率
linux
ltl9 小时前
MinIO 原理和架构:机制、AGPL 与上游 archived 风险
linux
陌路209 小时前
Docker教程从入门到精通(0基础)
运维·docker·容器
林浩杨_9 小时前
linux搜索命令(grep+sed)
linux·命令模式
W.W.H.10 小时前
将驱动编译成模块并安装到rootfs
linux·物联网·wifi·rootfs·驱动
ltl10 小时前
io_uring 在生产环境翻车实录:内核 bug、资源泄漏和你不知道的限制
linux
ltl10 小时前
内存分配器擂台:jemalloc vs tcmalloc vs mimalloc vs glibc
linux