1.-e /userdata判断目录userdata是否存在
2.-n显示行号以及内容
3.-c显示总行数不现实内容
4.-o显示某关键字出现的总次数
5.--color关键字高显
6.-v取反
grep -v 'root' passwd.bak取出不含root的所有行内容
7.-A显示之后的行,-A2显示含有此关键字之后的两行
8.-B显示之前的行,-B2显示含有此关键字之前的两行
9.-C前后的行,-C2显示含有此关键字前后各两行
10.^代表头$代表尾
"^$"代表空行
"^#"代表以#开头
"#$"代表以#结尾
"^[a-zA-Z]"代表以英文字母开头
"^[0-9]"代表以数字开头
11.grep通配符含义
. 代表任意一个字符(无论是空格还是其他字符)
*代表0个或多个*号之前的字符
+代表1个或多个+号之前的字符
?代表0个或1个?号之前的字符
12.sed有查找,删除和替换的功能(主要用来替换)
替换:-i用来保存,不加-i只是看到了运行结果,并没有将其保存,下次再看又是原来的样子
sed -i 's/old/new/g' passwd.bak里面的s表示substitute(替换)g代表global(全局)old(原字符)new(新字符)
vi里面的替换:%s/old/new/g
还可与grep结合查找grep -n '.*' passwd.bak|sed '1,5p' -n显示passwd.bak的前5行
还可与grep结合删除grep -n '.*' passwd.bak|sed '1,5d' -n删除passwd.bak的前5行(假删,只显示效果,要保存-i)
删除toor或mysql的话,sed '\toor|mysql\d'
删除含有数字的行,sed '/[0-9]/d'
13.head显示内存的前15条
head -15 /pro/meminfo
14.awk的命令格式awk ‘模式{操作}’ 文件NR行号是awk的内置变量
awk 'NR==1{print}' /etc/hosts显示/etc/hosts下的第一行
NR行号
F字符分割
$n 当前处理行的第n个字段
$0 当前处理行的所有文本内容