sort:排序
-n 正常顺序:1,2,3,11,12,21
-r 倒序
-k n 按第n列排序
-t 指定分割符,默认为空格
uniq:去重(仅相邻的项去重)
-c 显示该行重复出现的次数
-d 仅显示重复出现的行列
-u 仅显示出现一次的行列
cut:显示或删除行中指定的部分
-d 指定分割符,默认为tab
-f 显示指定字段的内容
tr:替换或删除
tr 123 678:1换成6 2换成8,一个一个的替换,而不是整体替换
-d 删除
wc:统计数字
-c 统计bytes数
-l 行数
-w 单词个数,默认以空格分割
sed
-n 取消默认输出
-e 多项编辑: sed -e '3d' -e '6d'
-i 在文件中执行
-r 支持拓展正则
-f 指定sed匹配规则脚本文件
定位:
1、数字定位法
sed '3d' a.txt
2、正则定位
sed '/^g/d' a.txt 删除以g开头的行
3、数字和正则定位
sed '4,/^g/d‘ a.txt 从第4行到以g开头的行
4、正则正则定位(多正则)
sed '/^g/,/^j/d' a.txt 从以g开头的行,到以j开头的行
编辑模式:
d 删除
p 打印
a 在当前行后添加一行或多行
c 用新文本修改(替换)当前行
sed '2cxxx' a.txt 用xxx替换第2行
i 在当前行之前,插入一行
sed '2ixxx' a.txt 在第2行之前插入一行xxx
r 把文件中的内容 插入到指定位置
sed '2r b.txt' a.txt 把b.txt中的内容插入到第2行
w 把指定行的内容写入到指定文件
sed '2w b.txt' a.txt 把a.txt的第2 行内容写入到b.txt中
y 将字符替换成另一个字符(两个相邻的字符不作为一个整体)
sed '2y/fa/FA/' a.txt 把f换成F,a换成A,fa和FA都不是一个整体
s 替换
sed 's/11/22/g' a.txt 把11全部替换成22,去掉g每行只替换一次
i 与s配合使用时忽略大小写
& 前面匹配到的内容