Linux生产环境上,最常用的一套“AWK“技巧
最有用 系列: 《Linux生产环境上,最常用的一套“vim“技巧》 《Linux生产环境上,最常用的一套“Sed“技巧》 《”Sed” 高级功能:我这小脑瓜都快绕晕了》 敢用自己的名字做软件名字的,都有非常强大的自信。比如,垠语言什么的。 awk 的命名得自于它的三个创始人姓别的首字母,都是 80来岁 的老爷爷了。当然也有四个人的组合:流行的GoF设计模式。但对于我这游戏爱好者来说,想到的竟然是三位一体,果然是不争气啊。 它长的很像C,为什么这么有名,除了它强大的功能,我们姑且认为 a 这个字母比较靠前吧。 awk 比 sed 简单,它更像一门编程语言。 打印某一列 下面,这几行代码的效果基本是相同的:打印文件中的第一列。 #Java System.out.println(aStr.split(" ")[0]); #Python print(aString.split(" ")[0]) #cut 命令 cut -d " " -f1 file #awk命令 awk '{print $1}' file 这可能是awk最常用的功能了: 打印文件中的某一列 。它智能的去切分你的数据,不管是 空格 ,还是 TAB ,大概率是你想要的。 对于csv这种文件来说,分隔的字符是 , 。AWK使用 -F 参数去指定。以下代码打印csv文件中的第1和第2列。 awk -F "," '{print