命令
ps -ef | grep Swoole | grep -v grep | awk '{print $2}' | xargs kill -9
命令解析
ps -ef
表示查看全格式的全部进程。
ps 是 linux 下最常用的也是非常强大的进程查看命令,常配合管道命令 | 和查找命令 grep 同时执行来查看特定进程。
参数含义:
-e 显示所有进程。-f 全格式。-h 不显示标题。-l 长格式。-w 宽输出。a 显示终端上的所有进程,包括其他用户的进程。r 只显示正在运行的进程。x 显示没有控制终端的进程。
grep -v grep
去掉包含 grep 的进程行
awk
AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。
之所以叫 AWK 是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的 Family Name 的首字符。
[label] 选项参数说明:[/label]
-F fs or --field-separator fs
指定输入文件折分隔符,fs 是一个字符串或者是一个正则表达式,如 -F:。-v var=value or --asign var=value
赋值一个用户定义变量。-f scripfile or --file scriptfile
从脚本文件中读取 awk 命令。-mf nnn and -mr nnn
对 nnn 值设置内在限制,-mf 选项限制分配给 nnn 的最大块数目;-mr 选项限制记录的最大数目。这两个功能是 Bell 实验室版 awk 的扩展功能,在标准 awk 中不适用。-W compact or --compat, -W traditional or --traditional
在兼容模式下运行 awk。所以 gawk 的行为和标准的 awk 完全一样,所有的 awk 扩展都被忽略。-W copyleft or --copyleft, -W copyright or --copyright
打印简短的版权信息。-W help or --help, -W usage or --usage
打印全部 awk 选项和每个选项的简短说明。-W lint or --lint
打印不能向传统 unix 平台移植的结构的警告。-W lint-old or --lint-old
打印关于不能向传统 unix 平台移植的结构的警告。-W posix
打开兼容模式。但有以下限制,不识别:/x、函数关键字、func、换码序列以及当 fs 是一个空格时,将新行作为一个域分隔符;操作符 ** 和 **= 不能代替 ^ 和 ^=;fflush 无效。-W re-interval or --re-inerval
允许间隔正则表达式的使用,参考 (grep 中的 Posix 字符类),如括号表达式 [[:alpha:]]。-W source program-text or --source program-text
使用 program-text 作为源代码,可与 - f 命令混用。-W version or --version
打印 bug 报告信息的版本。
[label] 示例 [/label]awk -F, '{print $1,$2}' log.txt
使用 "," 分割
xargs
xargs(英文全拼:eXtended ARGuments)是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。
xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据。
xargs 也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。
xargs 默认的命令是 echo,这意味着通过管道传递给 xargs 的输入将会包含换行和空白,不过通过 xargs 的处理,换行和空白将被空格取代。
xargs 是一个强有力的命令,它能够捕获一个命令的输出,然后传递给另外一个命令。
之所以能用到这个命令,关键是由于很多命令不支持 | 管道来传递参数,而日常工作中有有这个必要,所以就有了 xargs 命令,例如:
[label] 示例 [/label]
find /sbin -perm +700 |ls -l #这个命令是错误的
find /sbin -perm +700 |xargs ls -l #这样才是正确的
[label] 注:[/label]
xargs 一般是和管道一起使用。
命令格式:
somecommand |xargs -item command