文章目录
一:字符处理命令
排列的顺序是按照计算机内部的mask表顺序
1.1 对字符进行排序 sort
格式:sort 需要排序的对象
例:
sort test.txt # 横向每列每个进行对比
参数:sort 参数 需要排序对象
- -k(n) :指定列进行排序
sort -k(n)需要排序的对象 # k后面的n就是几列的意思,没有n默认第一列字符
# sort -k2 test.txt # 以文件的第2列进行排序,2列中的每段字符按照首位进行比对,每段字符越长不代表越大
- -n : 按照数值的大小进行排序
sort -n 需要排序的对象
# sort -nk2 test.txt # 以文件的第2列按照数值大小进行排序
- -r : 按照倒叙进行排序
sort -r 需要排序的对象 # 默认第一列倒叙排序
-rk(n) # 可指定第几列进行倒叙排序
# sort -rnk2 test.txt # 以文件内容的第2列按照数值的大小倒叙排列
- -t : 指定分隔符, 后面的排序按照分割符分割的列进行排序
sort -t 需要排序的对象
# sort -t ":" -rnk3 test.txt # 以文件内容的第三列按照数值的大小以:倒叙排列 -t后面如果是按照空格分隔需要加“ ”,此处也可直接-t:
1.2 对结果集进行去重 uniq
格式 :uniq [参数] 需要去重的对象
跟sort配合使用,uniq将sort排序过的结果通过管道进行去重处理。
# sort test.txt | uniq # 将test.txt里字符默认第一列去重
参数:
-c :显示重复的次数
# sort test.txt | uniq -c
# 注: -c参数主要用来显示重复的次数
-d:只显示重复的列
# sort test.txt | uniq -c -d
-u : 只显示不重复的例
# sort test.txt | uniq -c -u
1.3 剪切文件 cut
对文件内容执行查看或者字符排序状态下用管道进行cut剪切。
格式 :cut 参数 操作对象
参数:
-d # 指定分割符
-f # 指定显示的列
# sort -t ":" -nk3 /etc/passwd | cut -d ":" -f1,7
# 对sort指定排序过后的字符,用cut进行指定列的分隔符剪切呈现出来。-f1,7是1列和7列,-f1-7是1列至7列。
1.4 删除或替换结果集tr
格式: tr 参数 操作对象
对文件内容执行查看或者字符排序状态下用管道进行tr删除或者替换。
# cat /etc/passwd | tr "root" "ROOT"
# 将前面“”里的有的字符全部换成后面“”里有的,如果是前面“”里有很长,只要有后面“”里单个字符,有几个替换几个。
1.5 统计,计算数学 wc
可以跟管道配合使用,也可以自己执行文件使用。
格式:wc 参数 操作对象
参数:
-l :统计行数
# cat /etc/passwd | wc -l # 计算文件有多少行
-c :统计字节数
# cat demo.txt | wc -c # 计算文件有多少字节
-w :统计单词数
# cat demo.txt | wc -w # 计算文件有多少单词(一段为一个单词)