一行CMD命令kill(杀)掉你的进程
查看进程
pi@raspberry:~ $ ps -ef | grep python3
UID PID PPID C STIME TTY TIME CMD
pi 4678 4666 0 11:57 pts/1 00:00:00 python3 ./Desktop/device.py
pi 4859 4644 0 11:57 pts/0 00:00:00 grep --color=auto python3
pi@raspberry:~ $
常规操作
pi@raspberry:~ $ kill -9 4678
一行 Code
pi@raspberry:~ $ ps -ef | grep device.py | grep -v grep | awk '{print $2}' | xargs kill -9
解析
ps -ef
列出进程信息grep device.py
在进程信息中找到需要杀死的进程命令名- grep -v grep
在进程信息中剔除带 grep 的信息(也就是剔除 grep 命令的进程,避免误删) - awk '{print $2}'
提取字符串行内容的第2个字段,也就是当前示例的进程号 - xargs kill -9
将进程号作为参数传递给kill -9这个命令
总结
依据名字,有效杀死一个进程的方式
ps -ef | grep process_name_segment | grep -v grep | awk '{print $2}' | xargs kill -9
其中 process_name_segment 是想要杀死的进程名称的片段,实现模糊查找。
注意:有时候在嵌入式 Linux 系统中,打印行的第1个字段即为进程号,上述命令需要改写为 'print $1'。
补充1:
敲黑板:使用出发现 awk '{print $2}' 必须是 单引号,不能是双引号!
因为 ' ' 单引号内容代表引入代码块,并对命令行中信息进行解析。
补充2:
更简单的指令 pgrep 可以理解成是 pid grep ,筛选进程号,
因此更简单的写法是:
kill - `pgrep process_name_segment`
这里涉及一个知识点,若想要把其他命令的指令当做参数,可以使用 `执行命令` 反引号包裹起来,或者使用 $(执行命令) 美元符号加括号包裹起来。
于是,上述写法也可以是:
kill - $(pgrep process_name_segment)
一行CMD命令kill(杀)掉你的进程的更多相关文章
- 使用 bat cmd命令杀掉 删掉运行的程序
删掉所有xx.exe开启的进程 taskkill /f /im xx.exe 开启xx.exe start xx.exe 根据标题栏信息删除 taskkill /f /FI "windows ...
- Windows Linux的cmd命令查询指定端口占用的进程并关闭
以端口8080为例: Windows 1.查找对应的端口占用的进程:netstat -aon|findstr "8080",找到占用8080端口对应的程序的PID号: 2.根 ...
- Windows的cmd命令查询指定端口占用的进程并关闭
以端口8080为例: 1.查找对应的端口占用的进程:netstat -aon|findstr "8080" ,找到占用8080端口对应的程序的PID号: 2.根据PID号 ...
- 封装:Cmd命令调用和常用命令
原文:封装:Cmd命令调用和常用命令 一.Cmd命令调用方法 1.静态方法调用 class Program { static void Main(string[] args) { // Todo :打 ...
- Linux---使用kill杀不掉进程解决方案
今天打开Linux虚拟机,然后使用jps命令查看,莫名奇妙多了一个1889进程 然后使用kill杀掉后,再运行jps还是存在此进程.于是乎开始大量百度,最终找到了解决方案. 说的很清楚了,杀不掉的原因 ...
- cmd命令行结果保存到txt里,屏幕显示一行就保存一行到txt
#coding:utf-8 """ 1.重定向print 2.python与cmd命令 """ import sys import os i ...
- linux一行命令查杀进程
https://blog.csdn.net/primeprime/article/details/52415273 ps -efww | grep -w 'helloworld' | grep -v ...
- Windows cmd命令
运行操作 CMD命令锦集 1. gpedit.msc-----组策略 2. sndrec32-------录音机 3. Nslookup-------IP地址侦测器 ,是一个监测网络中DN ...
- CMD命令大全
有关某个命令的详细信息,请键入 HELP 命令名 ASSOC 显示或修改文件扩展名关联. AT 计划在计算机上运行的命令和程序. ATTRIB 显示或更改文件属性. BREAK 设置或清除扩展式 CT ...
随机推荐
- Codeforces Good Bye 2018 D (1091D) New Year and the Permutation Concatenation
题意:给n!个n的排列,按字典序从小到大连成一条序列,例如3的情况为:[1,2,3, 1,3,2, 2,1,3 ,2,3,1 ,3,1,2 ,3,2,1],问其中长度为n,且和为sum=n*(n+1) ...
- codeforces 1064D 双端队列BFS
双端队列BFS解决的就是路径权值可能为0的图最短路问题,权值为0插入队头,否则插入队尾. 对于这个题,可以看作上下移动的路径的权值为0,左右移动权值为1,而且不能超过规定的步数. 直接广搜求覆盖的点的 ...
- ES6中变量的解析赋值的用途
变量的解构赋值用途很多. (1)交换变量的值 let x = 1; let y = 2; [x, y] = [y, x]; 上面代码交换变量x和y的值,这样的写法不仅简洁,而且易读,语义非常清晰. ( ...
- 算法Sedgewick第四版-第1章基础-2.1Elementary Sortss-008排序算法的复杂度(比较次数的上下限)
一. 1. 2.
- hdu4283 You Are the One
传送门 题目 The TV shows such as You Are the One has been very popular. In order to meet the need of boys ...
- Entity Relationships
Entity Relationships: Here, you will learn how entity framework manages the relationships between en ...
- C++笔记--函数
函数的定义和声明 函数的声明和定义都必须描述相同的类型,但是声明可以不写参数名,定义则必须写参数名,但是他们的参数名字可以不同. 一个局部变量被声明为static,那么这个局部变量将只会被初始化一次, ...
- WebGoat系列实验Cross-Site Scripting (XSS)
WebGoat系列实验Cross-Site Scripting (XSS) PhishingTitle 本次实验是在一个已知存在XSS漏洞的页面进行钓鱼攻击.通过使用XSS与HTML注入,在页面中注入 ...
- C 标签使用
JSTL 核心标签库标签共有13个,功能上分为4类: 1.表达式控制标签:out.set.remove.catch 2.流程控制标签:if.choose.when.otherwise 3.循环标签:f ...
- Web开发秘方(WEB DEVELOPMENT RECIPES)[47.5MB] PDF扫描版
不借助插件怎样在移动设备上实现动画效果?怎样快速搭建HTML电子邮箱?怎样制作跨PC和移动设备显示的应用界面?怎样利用最新的JavaScript框架提高应用的响应速度?怎样有效利用CoffeeScri ...