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"

这样就很优雅了~

相关推荐
一条星星鱼2 分钟前
从0到1:如何用统计学“看透”不同睡眠PSG数据集的差异(域偏差分析实战)
人工智能·深度学习·算法·概率论·归一化·睡眠psg
昵称什么的不存在5 分钟前
WPeChatGPT 插件使用教程(转载)
linux·逆向
码农hbk8 分钟前
xv6 源码精读(二)开启MMU、一致性映射页表
linux·服务器
香菜烤面包11 分钟前
Attention:MHA->MQA->GQA->MLA
人工智能·深度学习
雪碧聊技术19 分钟前
Linux命令过关挑战
linux·运维·数据库
nju_spy23 分钟前
牛客网 AI题(一)机器学习 + 深度学习
人工智能·深度学习·机器学习·lstm·笔试·损失函数·自注意力机制
liulilittle29 分钟前
在 Android Shell 终端上直接运行 OPENPPP2 网关路由配置指南
android·linux·开发语言·网络·c++·编程语言·通信
ayaya_mana34 分钟前
CentOS 7 安装指定内核版本与切换内核版本
linux·运维·centos
uncle_ll42 分钟前
Sherpa 语音识别工具链安装指南(Linux CPU 版)
linux·nlp·语音识别·tts·sherpa
岁月的眸1 小时前
【循环神经网络基础】
人工智能·rnn·深度学习