linux文件处理命令 sort uniq cut tr wc命令
文件处理命令 :
1、sort命令
定义 : 用于将文件内容加以排序
## sort默认情况下以文本中每行的第一个字母来排序
参数: -n # 依照数值的大小排序
-r # 以相反的顺序来排序
-k # 以某列进行排序
-t # 指定分割符,默认是以空格为分隔符的
案例:
无参: sort 3.txt # 只匹配开头的大小
-n : sort -n 3.txt # 匹配第一列数值整体的大小 为从小到大排序
-r : sort -r 3.txt # 匹配第一列数值的整体的大小为从大到小排序
-k : sort -k2 3.txt # 匹配第二列开头从小到大排序
-t : sort -t'|' 3.txt # 指定分割符为'|' 则'|' 前后各为一列
综合 : sort -n -k2 -t'|' 3.txt
# 以 | 分割第二列排序
2、uniq命令
定义: 用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用
# 注: uniq默认只去重相邻相同的内容 故可以先排序再去重 所以要与sort结合使用
参数: -c # 在每列旁边显示该行重复出现的次数。
-d # 仅显示重复出现的行列
-u # 仅显示出一次(不重复)的行列
案例:
-c : [root@localhost ~]# cat 4.txt | sort | uniq -c 将4.txt重复出现的删除并打印重复次数
-d : [root@localhost ~]# cat 4.txt | sort | uniq -d 只打印重复的列
-u : [root@localhost ~]# cat 4.txt | sort | uniq -u 打印不重复的列
3、cut命令
定义:cut命令用来显示行中的指定部分,删除文件中指定字段
参数: -d # 指定字段的分隔符,默认的字段分隔符为'TAB'
-f # 显示指定字段的内容
案例:
# 指定分隔符为 | 显示第二行内容
[root@localhost ~]# cat 3.txt | cut -d'|' -f2
4、tr命令
定义:替换或删除命令
# 注 :替换为一个对应一个字符tr 22 34 第一个2替换成3 第二个2替换成4
参数:-d # 删除字符
案例:
# 将文件中所有的22 替换成 33
[root@localhost ~]# cat 3.txt | tr 22 33
5、wc命令
定义:统计,计算数字命令
参数: -c # 统计文件的Bytes数
-l # 统计文件的行数
-w # 统计文件中单词的个数,默认以空白字符做分隔符
单词数: 连续的字符组成的个数 eg: abv sss wasd 这就是三个单词书