1、sed(stream edit)流式编辑器
sed进程的内存空间内部被分为两部分:模式空间,保持空间
执行命令时,从硬盘文件一行一行读取内容到模式空间中,以相应的引号内的规则处理,结果放入保存空间,同时会默认输出到屏幕上
sed对比vim
1、sed可以把处理文件的规则事先写好,然后用同一套规则编辑多个文件,批量处理文件;vim只能依次编辑
2、sed处理文件,一次只处理一行,内存只读取一行,大文件不会对内存造成压力,用于处理大文件;vim是一次读取所有内容,读大文件时内存压力大
sed 选项
-n 取消默认输出
-r
-i 把输出的内容编辑入文件内
规则: 定位+命令
定位方式:
1、行号定位
2、正则定位
命令:
d:剪切
p:print
s///g:替换
‘定位s///g’
2、awk
主要擅长处理有规律的文本,主要用于做一些格式化处理
选项
-F 后街指定分隔符,例如”:“ 不输入是默认为空格分隔,空格可以是连续多个
定位:行号定位:NR <= >= == 行号
内置变量NR,第NR次读取的行
NF:截出的段数,每行一个 正则定位:xxxxxxxx
awk -F: '定位{处理规则} ’ 文件/路径
3、grep:
擅长过滤
grep 选项 “过滤规则” 文件/路径
选项:
-n 加标行号
-i 忽略大小写
-l 判断文件中有没有过滤的内容,成功会返回文件名 -r 通常与 -l 同用,过滤文件夹内文件,包含过滤内容的文件会被返回 grep -rl 目录
过滤规则:
正则规则
ps aux 查看所有的进程
ps aux | grep ’ ’ 过滤出想要的进程
grep -v ’ ’ 过滤掉不想要的(或者把过滤内容的第一个字符放在中括号里[ ])
kill -9 进程的pid 强制