您的位置:首页 > 运维架构 > Linux

Linux-grep命令小记

2015-11-08 00:30 489 查看
分析:

kill -15 `ps -eaf | grep -v grep | grep -i nodemanager | awk '{print $2}'`

这句代码的含义

1.

关于grep:

grep全称是Global Regular Expression
Print,表示全局正则表达式版本,它的使用权限是所有用户。

说明:grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为“-”,则grep指令会从标准输入设备读取数据。

-v 反转查找,那么grep -v grep意思即:过滤掉包含有grep字符的行;

-i 不区分大小写,那么grep -i nodemanager意思即:查找包含nodemanager的行;

2.

关于awk:

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

awk工作流程是这样的:读入有'\n'换行符分割的一条记录,然后将记录按指定的域分隔符划分域,填充域,awk
'{print $n}' 中的$0则表示所有域,$1表示第一个域,$n表示第n个域。默认域分隔符是"空白键"
或 "[tab]键"。

awk
'{print $2}'意思:打印查找出来的内容的第二个域;

3.

关于ps:

-a
显示所有进程 ;

-e
等价于-A,显示所有进程;

-f
全部列出,通常和其他参数一起使用;

ps
-eaf意思:显示所有进程;

4.

关于kill:

kill -15 pid中,-15是正常kill进程,pid是进程号;

kill -9 pid中,-9是强制kill进程,pid是进程号;

综上,代码

ps -eaf | grep -v grep | grep -i nodemanager | awk '{print $2}'

的含义是:

查找所有带有字符串“nodemanager” 而且不包含字符串“grep”的进程,并打印查找结果的第二个域(也就是进程的pid);

kill -15 `ps -eaf | grep -v grep | grep -i nodemanager | awk '{print $2}'`

的含义:
正常kill 所有带有字符串“nodemanager” 的进程;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: