Linux Shell 命令

时间:2020-12-07 12:30:35

(1) 操作一个文件并对文件查询行进行切分处理

  

grep 'xxx' xxx.txt | cut -d : -f (或者1-)

(2) 操作文件进行去重并显示重复次数

grep 'xxx' xxx.txt | cut -d : -f  | sort | uniq -c

(3) 查看总的汇总行数

grep 'xxx' xxx.txt | cut -d : -f  | sort | uniq -c | wc -l

(4) awk使用进行数据换顺序

grep '获取房间' room-marr.txt | cut -d '=' -f 3,7 | awk -F '=' '{print$2,$1}' | uniq | sort -u

sort  :将文本文件内容加以排序。

sort -u [file]  =  sort [file] | uniq (去重)

参数说明

-b 忽略每行前面开始出的空格字符

-c 检查文件是否已经按照顺序排序

-d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符

-f  排序时,将小写字母视为大写字母

-l  排序时,除了040至176之间的ASCII字符外,忽略其他的字符

-m 将几个排序好的文件进行合并

-M 将前面3个字符依照月份的缩写进行排序

-n 依照数值的大小排序

-o<输出文件> 讲排序后的结果存入指定的文件

-r 以相反的顺序来排序

-t<分隔字符> 指定排序时所用的栏位分割字符

+<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始兰位到结束栏位的前一栏位

--help 显示帮助

--version 显示版本信息

-u 对排序后认为相同的行只留其中一行

uniq : 检查及删除文本文件中重复出现的行列。

语法:uniq[选项] 文件

最重要参数:  默认(去重)  |  -d(显重)   |   -u(删重)

参数

-c或--count 在每列旁边显示该行重复出现的次数

-d或--repeat 仅显示重复出现的行列

-f<栏位>或--skip-fields=<栏位> 忽略比较指定的栏位

-s<字符位置>或--skip-chars=<字符位置> 忽略比较指定的字符

-u或--unique 仅显示出一次的行列

-w<字符位置>或--check-chars<字符位置> 指定要比较的字符

--help 帮助信息

--version 版本信息