Linux终止进程(kill process)的一些玩法

经常运行一个程序时,表面上已经终止了,实际上还在后台运行。一来呢,它可能占据端口,导致端口复用的时候报错。二来呢,它可能占用GPU,让你显存直接少一块。

尤其是在多进程程序,假如运行"python train.py",直接后台起了8个进程,你需要终止这些进程的话,你可以用最原始的方法:

shell 复制代码
ps -ef | grep "python train.py"
# 8 个 pid
kill -9 <pid> # 运行8次

很直接,但是不够优雅。而且效率低下。你可以这样:

shell 复制代码
kill -9 $(pgrep -f "python train.py")

一行命令,就能终止所有的相关进程。用这个命令时需要特别小心,确保不伤及无辜进程。

为了更优雅一点,我们可以把这行命令写到bashrc或者zshrc里:

shell 复制代码
vim ~/.bashrc
# paste the following
mykill() {
    kill -9 $(pgrep -f "$1")
}
source ~/.bashrc

然后,我们就可以:

shell 复制代码
mykill "python train.py"

这样就很优雅了~

相关推荐
_w_z_j_2 分钟前
Linux----线程互斥与同步
linux·运维·开发语言
风华同学4 分钟前
【Linux驱动篇】字符设备驱动开发
linux·运维·驱动开发
wxh_无香花自开24 分钟前
Linux 笔记:rpm命令
linux·运维·笔记·rpm
会挠头但不秃27 分钟前
深度学习(5)循环神经网络
人工智能·rnn·深度学习
乐迪信息28 分钟前
乐迪信息:AI摄像机识别煤矿出入井车辆数量异常检测
大数据·运维·人工智能·物联网·安全
张童瑶31 分钟前
Linux SSH配置密钥文件及免密登录
linux·运维·ssh
tianyuanwo32 分钟前
Linux密码加密技术深度解析:从盐值到加密算法的完整指南
linux·密码加密
翼龙云_cloud35 分钟前
腾讯云渠道商:腾讯云快照和镜像备份区别在哪?
运维·服务器·云计算·腾讯云
哥布林学者1 小时前
吴恩达深度学习课程四:计算机视觉 第二周:经典网络结构 课后习题和代码实践
深度学习·ai
YMatrix 官方技术社区1 小时前
YMatrix 高可用详解:3 种镜像策略在节点宕机时表现有何不同?
运维·数据库·数据仓库·ai·数据库开发·数据库架构·ymatrix