Linux命令行中对表格类型文本的几处操作总结

Linux命令行中对打印成表格类型的文本进行操作

先创建一个文件list.txt,包含三列数据(姓名、年龄、职业)

每行一组数据,每组数据不同的列,用空格隔开

Tsybius 23 Programmer
Galatea 21 Swordsman
Gaius 20 Unknown
Fenix 25 Engineer
Julia 22 Merchant
Tsybius 23 Programmer
Tsybius 23 Programmer
Xenia 15 Student
Flavia 29 Teacher
Gaius 20 Unknown

1)输出文件list.txt的内容

cat list.txt


2)把list.txt中的内容逐行按字母序排序

按字母序从小到大

sort list.txt

按字母序从大到小

sort -r list.txt

若要指定第二列按数字顺序排序,则需要添加-n和-k两个参数

sort -n -k2 list.txt
sort -nr -k2 list.txt


3)将数据表内不重复的数据进行输出

通过uniq实现

sort list.txt | uniq

现在将这组数据输出到文件sortedlist.txt中

sort list.txt | uniq > sortedlist.txt

4)统计文件行数

统计当前目录下所有文件的行数,用wc

wc -l ./*


5)取数据表指定行、指定列的信息

取行、列的信息,需要用到awk和sed

取第一列、第三列

cat list.txt | awk ‘{print $1,$3}‘

取第二行

cat list.txt | sed -n ‘2p‘

取第二行到第五行

cat list.txt | sed -n ‘2,5p‘

取第二行和第五行

cat list.txt | sed -n ‘2p;5p‘


END

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。