通过cat命令学习复杂linux命令

来源:互联网 发布:dt大数据梦工厂 编辑:程序博客网 时间:2024/06/06 03:11

cat命令涉及到大量的参数,并且cat命令也是面试题中复杂linux命令常常考察的命令,下面对这个命令做一个详细介绍

1 cat -n xxx.txt

   -n参数代表,带着行号将文件内容打印在当前屏幕

2 cat > xxx.txt

   创建一个名字叫xxx.txt的文件,不能覆盖原有文件。

   cat -n xxx.txt > bbb.txt

   就表示把xxx.txt的内容加上行号,输出到bbb.txt

   cat xxx.txt >> bbb.txt

   将xxx.txt的内容输入到bbb.txt的末尾

3 tac xxx.txt > bbb.txt

   将xxx.txt中的内容倒着输入到bbb.txt。最小单位是行。

4 cat -b 和cat -n类似,只不过不会输出空行,可以用来去除空行

然后这里主要是想通过cat命令来学习复杂的linux命令,接下来先引入sort

1 cat xxx.txt | sort

  对xxx.txt文档按单词进行排序,默认是对每一行的第一个词按字典序排列

2 假设现在有这么一种情形,xxx.txt文档每一行都是如下格式

   name:address:value.

   现在要按value的字典序进行排序并且将结果输出到屏幕上应该怎么做?

   cat xxx.txt | sort -t ':' -k 3

   -t 表示以:分隔字符,默认是空格的;-k 3表示分隔后的第三栏作为排序标准

3 cat xxx.txt | sort -k 3n

   -k 3n 表示第三栏是数字,按照数字排序,默认是升序,-k 3nr是按照数字倒序排列

再次引入uniq,表示去重,很多时候是需要用到去重命令的

 主要介绍uniq -c,在输出行的最前面加上每行出现的次数。

  那么现在出一个复杂的linux命令题,查询一个xxx.txt中重复量最大的十个词,并且按照逆序排列

  cat words.txt | sort | uniq-c | sort -k1,1nr | head -10

 


0 0
原创粉丝点击