ps:

ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源等等.

注意:ps是显示瞬间进程的状态,并不动态连续;如果想对进程进行实时监控应该用top命令

参数:

  • -A :所有的进程均显示出来,与 -e 具有同样的效用;
  • -aux 显示所有包含其他使用者的进程

最常用的有ps -ef 和ps -aux,解释如下:

ps -ef 是用标准的格式显示进程的、其格式如下

其中各列的内容意思如下
UID       //用户ID,但输出的是用户名 
PID        //当前进程的ID 
PPID     //父进程ID 
C          //进程占用CPU的百分比 
STIME  //进程启动时间 
TTY      //该进程在哪个终端上运行,若与终端无关,则显示? ,若为pts/0等,则表示由网络连接主机进程。 
CMD    //命令的名称和参数

ps aux 是用BSD的格式来显示、其格式如下

同ps -ef 不同的有列有
USER       //用户名 
%CPU      //进程占用的CPU百分比 
%MEM      //占用内存的百分比 
VSZ      //该进程使用的虚拟內存量(KB) 
RSS      //该进程占用的固定內存量(KB)(驻留中页的数量) 
STAT      //进程的状态 
START    //该进程被触发启动时间 
TIME      //该进程实际使用CPU运行的时间

其中STAT状态位常见的状态字符有
D      //无法中断的休眠状态(通常 IO 的进程); 
R      /运行,正在运行或在运行队列中等待; 
S      //sleeping,中断,休眠中,在等待某个条件的形成或接受到信号; 
T      //停止,进程收到SIGSTOP,SIGSTP,SIGTOU信号后停止运行; 
W      //进入内存交换 (从内核2.6开始无效); 
X      //死掉的进程 (基本很少见); 
Z      //僵尸进程,进程已终止,但进程描述符存在,直到父进程调用wait4()系统调用后释放;
<      //优先级高的进程 
N      //优先级较低的进程 
L      //有些页被锁进内存; 
s      //进程的领导者(在它之下有子进程); 
l      //多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads); 
+      //位于后台的进程组;

本文永久更新链接地址http://www.linuxidc.com/Linux/2016-07/133515.htm

grep:

参数:

  • --color    ###颜色着重显示命中的文件及文件件
  • -n  ###显示所检索内容在文件中的行号  number
  • -i   ###不区分大小写
  • -c  ###查找匹配的行数。输出类似于:filename1:0\n filename2:2.....
  • -E  ###切换为 egrep,支持正则表达式   grep -E -v '(^$|^#)' xxxx 等价于egrep -v '(^$|^#)' xxx
  • -A   n    ###after     前面多少行,例如:grep ‘name’ -A 10 显示匹配内容和后面的10行
  • -B   n   ###before    后面多少行,例如:grep ‘name’ -B 10 显示匹配内容和前面的10行
  • -C   n   ###centor    前后多少行,例如:grep ‘name’ -C 10 显示匹配内容和前后面的10行
  • -F 或 --fixed-regexp : 将样式视为固定字符串的列表。
  • -v: 逆反模示, 输出不包含过滤字符串的内容.
  • -r: 递归模式, 可同时处理所有层级子目录里的文件.
  • -q: 静默模式, 不输出任何结果(stderr 除外. 常用以获取 return value, 符合为 true, 否则为 false .)
  • -w: 整词比对, 类似 \<word\> .
  • -l: 只输出符合比对的文件名称. 例如:grep -l 'string' *.log只返回含有匹配数据的文件名
  • -L:只返回不含有匹配数据的文件名,例如:grep -L 'string' *.log只返回不含有匹配数据的文件名
  • -o: 只输出符合 RE 的字符串.
  • -H:在匹配行输出文件名
fgrep 相当于执行 grep 指令加上参数 -F

pgrep命令是专门用于进程查询的grep。举例:$ pgrep firefox,输出为 1827

举例:

1) grep命令与find 命令的结合,实现联合检索
命令格式:find . -name '*.sql' -exec grep -i '被检索内容' {} \; -print
例如: $find . -name '*.sql' -exec grep -i 'v\$temp_space_header' {} \; -print
2) grep -o 只输出符合 RE 的字符串.
$grep '111' 21_h264.txt
7111
8111
$grep -o '111' 21_h264.txt
111
111
3) grep -c 查找匹配的行数
$grep -c test cmp_md5_from_log.sh cmp_md5_from_output.sh test.sh
cmp_md5_from_log.sh:10
cmp_md5_from_output.sh:16
test.sh:0
$grep test cmp_md5_from_log.sh cmp_md5_from_output.sh test.sh|wc -l
26
4)grep -H 在匹配行输出文件名
$grep -H test cmp_md5_from_log.sh
cmp_md5_from_log.sh:ref_test_id=$2
5)用grep查找单个或多个字符串
1.单个
$cat /tmp/php.log | grep "成功"  #所有的成功都会被查询出来。
2.多个,同时满足条件
$cat /tmp/php.log | grep "推荐" | grep "成功"  #只筛选出推荐成功的记录。
3.或,满足任意条件
$cat /tmp/php.log | grep -E "成功|失败"
$cat /tmp/php.log | egrep "成功|推荐"   #成功或者推荐的都查询出来。

kill 命令总结

1.获取PID,kill -s 9 PID 其中-s 9 制定了传递给进程的信号是9,即强制、尽快终止进程。

2.pgrep firefox | xargs kill -s 9,把进程PID通过xargs传递给kill作参数,杀掉对应的进程。

3.kill -s 9 `pgrep firefox`

4.pkill -9 firefox,"-9" 即发送的信号是9,pkill无须 "s",终止信号等级直接跟在 "-" 后面

linux命令杀父进程和子进程
杀掉父进程:
 kill -9 `ps -ef |grep test |awk 'NR==1{print $3}'` 其中:NR==1 定位在file的第一行
或者
kill -9 `ps -ef | grep test | grep -v "grep" | awk '{print $3}'`
 
杀掉子进程:
kill -9 `ps -ef |grep test |awk 'NR==1{print $2}'`
或者
kill -9 `ps -ef | grep test | grep -v "grep" | awk '{print $2}'`
参考:https://blog.csdn.net/XIAOHUI_ID/java/article/details/95353321
 

linux 中获取进程和kill进程的几种方法的更多相关文章

  1. linux下查看进城(ps)的方法 与 杀死进程(kill)的N种方法

    PS查看进程 inux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必 ...

  2. Linux 中执行Shell 脚本的方式(三种方法)

    Shell 脚本的执行方式通常有如下三种: (1)bash script-name 或者 sh script-name:(2)path/script-name或者./script-name:(3)so ...

  3. linux下杀死进程(kill)的N种方法

    常规篇: 首先,用ps查看进程,方法如下: $ ps -ef ……smx       1822     1  0 11:38 ?        00:00:49 gnome-terminalsmx   ...

  4. linux下杀死进程(kill)的N种方法 【转】

    转自 http://blog.csdn.net/andy572633/article/details/7211546 首先,用ps查看进程,方法如下: $ ps -ef ……smx       182 ...

  5. 【转】linux下杀死进程(kill)的N种方法

    转载一篇,最原始的出处已不可考,望见谅! 常规篇: 首先,用ps查看进程,方法如下: $ ps -ef ……smx       1822     1  0 11:38 ?        00:00:4 ...

  6. C#程序中获取电脑硬件配置信息的一种方法

    本文介绍获取cpu信息和内存信息的方法,根据本文所举例的代码可以举一反三获取更多信息. 获取cpu名称的方法: public string GetCpuInfo() { ManagementObjec ...

  7. linux中使用head,tail,grep, sed,awk三种方法显示文档中间若干行(指定任意行)

    需要显示文本中间20-25行. 创建一个30行的文档,命名为30.txt并显示在屏幕 [root@v2-ui data]# seq 30 > 30.txt && cat 30.t ...

  8. Linux下查找进程,kill进程

    1. ps命令用来查找linux运行的进程,常用命令: ps aux | grep 进程名:  eg:ps aux | grep admin 查找admin的进程 或者 ps -ef | grep j ...

  9. Linux中获取本机的最新IPv6地址_更新ddns的脚本

    Linux中获取本机的最新IPv6地址_更新ddns的脚本 转载注明来源: 本文链接 来自osnosn的博客,写于 2019-11-07. 运营商提供ipv6地址. 路由器后有台linux机器,通过e ...

  10. springMVC中获取request和response对象的几种方式(RequestContextHolder)

    springMVC中获取request和response对象的几种方式 1.最简单方式:参数 2.加入监听器,然后在代码里面获取 原文链接:https://blog.csdn.net/weixin_4 ...

随机推荐

  1. Linux系统添加永久静态路由的方法(包含Centos7)

    一.使用route命令添加 使用route 命令添加的路由,机器重启或者网卡重启后路由就失效了,方法:A.添加到主机的路由# route add –host 192.168.1.10 dev eth0 ...

  2. 企业定制CRM系统的5步流程

    由于所处的行业不同,不同的企业对CRM系统的需求也不同.除了行业通用的功能之外,每个企业都有自己独特的功能需求.为了让CRM系统跟上这种需求的变化,CRM厂商通常也会提供CRM系统定制开发功能来满足不 ...

  3. unity中使用Highlighting System v4.0插件给物体添加高亮

    插件:Highlighting System v4.0 操作:在摄像机上挂上HighlightingRenderer脚本 脚本目录在\Assets\Plugins\HighlightingSystem ...

  4. 浅析PriorityBlockingQueue优先级队列原理

    介绍 当你看本文时,需要具备以下知识点 二叉树.完全二叉树.二叉堆.二叉树的表示方法 如果上述内容不懂也没关系可以先看概念. PriorityBlockingQueue是一个无界的基于数组的优先级阻塞 ...

  5. Configuration注解

    1.说明 Configuration注解的出现就是为了替换xml文件 java配置是通过@Configuration和@Bean注解实现了 @Configuration注解,声明当前是一个配置类,相当 ...

  6. 微信内 H5 页面自定义分享

    起源: 最近公司在做一个活动的h5页面,在微信内打开时需要进行微信授权,然后后端会重定向到这个页面并且携带了一些参数(openid等).问题是点击微信的原生分享时,会把携带的这些参数一起分享出去,等于 ...

  7. 字符识别OCR原理及应用实现

    字符识别OCR原理及应用实现 文本是人类最重要的信息来源之一,自然场景中充满了形形色色的文字符号.光学字符识别(OCR)相信大家都不陌生,就是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过 ...

  8. 多目标跟踪:CVPR2019论文阅读

    多目标跟踪:CVPR2019论文阅读 Robust Multi-Modality Multi-Object Tracking  论文链接:https://arxiv.org/abs/1909.0385 ...

  9. AlexeyAB DarkNet YOLOv3框架解析与应用实践(一)

    AlexeyAB DarkNet YOLOv3框架解析与应用实践(一) Darknet:  C语言中的开源神经网络 Darknet是一个用C和CUDA编写的开源神经网络框架.它速度快,易于安装,支持C ...

  10. ng : 无法加载文件 C:\Users\szz\AppData\Roaming\npm\ng.ps1,因为在此系统上禁止运行脚本的解决方案

    当安装好Angular CLI后想要查看该版本时在终端键入: ng version 后出现下图的错误提示 解决方案: 在win10 系统中有一个搜索框 输入 Windos PowerShell (一定 ...