1、grep命令
1> grep , 文本过滤工具。grep 是 Linux 系统中最重要的命令之一,其功能是从文本文件或管道数据流中筛选匹配的行及数据。grep 命令里的匹配模式或模式匹配,可以是普通的文字符号也可以是正则表达式
2> 语法格式:grep 【options】【pattern】【file】
grep [参数] [匹配模式] [查找的文件]
参数 | 说明 |
-c | 计算找到‘搜索字符串’的行数 |
-o | 指数出匹配的内容 |
-i | 不区分大小写 |
-n | 显示匹配内容的行号 |
-r | 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作 |
-v | 反向选择,即没有‘搜索字符串’内容的行 |
-l | 列出文件内容符合指定的范本样式的文件名称 |
-E | 扩展 grep,即 egrep,可以使用扩展正则表达式 |
--color=auto | 搜索关键词显示颜色 |
-V | 显示软件版本信息 |
-w | 强制模式只匹配整个单词 |
3> grep -v grep 就是查找不含有 grep 字段的行。
4> 找出某个进程的pid
ps -ef | grep "mgod" | grep -v "grep" | awk '{print $2}'
ps -ef | grep -w pyBar | grep -v grep | grep -v watchdog | grep -v desktop | awk '{print $2}
5> 杀掉有关swoole的进程
ps -aux|grep "swoole"|awk '{print "kill -9 "$2}'
2、ps 命令
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。ps命令列出的是执行ps命令的那个时刻有哪些进程,如果想要动态的显示进程信息,就可以使用top命令。
参数 | 说明 |
a | 显示现行终端机下的所有程序,包括其他用户的程序 |
-A | 显示所有程序 |
c | 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示 |
-e | 此参数的效果和指定"A"参数相同 |
e | 列出程序时,显示每个程序所使用的环境变量 |
f | 用ASCII字符显示树状结构,表达程序间的相互关系 |
-H | 显示树状结构,表示程序间的相互关系 |
-N | 显示所有的程序,除了执行ps指令终端机下的程序之外 |
s | 采用程序信号的格式显示程序状况 |
S | 列出程序时,包括已中断的子程序资料 |
-t <终端机编号> | 指定终端机编号,并列出属于该终端机的程序的状况 |
u | 以用户为主的格式来显示程序状况 |
x | 显示所有程序,不以终端机来区分 |
-l | 較詳細的顯示該PID的信息 |
3、awk 命令
awk是处理文本文件的一个应用程序,几乎所有Linux系统都自带这个程序。它依次处理文件的每一行,并读取里面的每一个字段。对于日志、CSV 那样的每行格式相同的文本文件,awk可能是最方便的工具。
基本语法:awk 动作 文件名
awk '{print $0}' demo.txt
demo.txt是awk所要处理的文本文件。前面单引号内部有一个大括号,里面就是每一行的处理动作print $0。其中,print是打印命令,$0代表当前行,因此上面命令的执行结果,就是把每一行原样打印出来。
awk会根据空格和制表符,将每一行分成若干字段,依次用$1、$2、$3代表第一个字段、第二个字段、第三个字段等等
$ echo 'this is a test' | awk '{print $3}'
a
其他的参考:awk 入门教程
4、centos7操作SSH/SSHD服务(查看/启动/重启/自启)
//查看状态
systemctl status sshd.service
//启动服务
systemctl start sshd.service
重启服务
systemctl restart sshd.service
//开机自启
systemctl enable sshd.service