cut
- cut -d ‘分隔符’ -f 指定第几段
- cut -c 后面一个数字表示截取第几个字符,后面一个数字区域,则表示截取几个字符串
sort
- sort -t ‘分隔符’-k n1,n2 排序区间 -r 逆序 -n使用纯数字 -u 去重
- 默认使用ascii码排序,升序
- 如果按照数字排序,字母当做0
uniq 用于去重复的行
uniq -c
统计重复的行数,并把行数写在前面- uniq 的前提是需要先给文件排序,否则不管用
tee 将文件重定向的同时,显示在屏幕上。
- echo ‘asfddsaf’| tee test.txt
tr 替换字符,针对字符来说
tr -d
删除字符,后面跟删除的字符tr -s
把重复的字符去掉cat passwd | tr 'a-z' 'A-Z'
cat passwd | tr -s o
cat passwd | tr -d a
split 用于切割文档
split -b 10M passwd
按照文件大小分割split -l 10 passwd
按照文件行数分割
grep 过滤文本
grep -c
打印符合要求的行数grep -n
输出符合要求的行的同时连同行号一起输出grep -v
打印不符合要求的行grep -An
打印符合要求的行以及下面n行grep -Bn
打印符合要求的行以及上面n行grep -Cn
打印符合要求的行以及上下各n行grep -r
遍历目录
egrep 相当于 grep -E
可以直接使用+ , ?, | , (),sed 查找过滤,替换,删除
过滤
sed -n '10'p 1.txt
打印第10行sed -n '1,4'p 1.txt
打印第1到4行sed -n '/^root/'p 1.txt
打印符合规则的行
对于正则符号
sed -n -r '/ro+/'p 1.txt
sed -n '/ro+\+/'p 1.txt
同时执行多个任务
sed -e '/root/'p -e '/body/p' -n 1.txt
sed '/root/p;/body/p' -n 1.txt
删除指定行
sed '/root/'d 1.txt
替换
sed '1,2s/root/ROOT/g' 1.txt
调换字符串的位置
sed -r 's/(root)(.*)(bash)/\3\2\1/'
使用-i选项直接修改文件,不建议使用