日期:2014-05-16  浏览次数:20692 次

Linux下数据检索工具awk的使用

最近参加面试虽然面试java,但是基本都会有linux相关的题目,碰到几次awk相关的题目,比如:

1.打印文本中第三列的数据

2.打印文本中包含‘hello’列的数据行

3.将文本中的数据行按第四列顺序排列显示第一行和最后一行

4.将文本中的列倒序一下

假设文本b.txt的内容是

123 123 4567 hello

123 123 4567 world

123 123 4567 java

123 123 4567 linux

答案:

1、# awk '{print $3}' b.txt

打印:

??? 4567
??? 4567
??? 4567
??? 4567

2、# awk '/hello/' b.txt

打印:

123 123 4567 hello

3、#sort -k 4 b.txt|awk '{print $1" "$4}'

????123 hello
??? 123 java
??? 123 linux
??? 123 world

4、网上搜索了一下找到列倒序排列的

# awk '{for(i=0;i<=NF-1;i++)printf("%s ",$(NF-i));printf("\n");}' b.txt

打印:

hello 4567 123 123
world 4567 123 123
java 4567 123 123
linux 4567 123 123

更详细的内容请参考http://www.chinaunix.net/jh/24/691456.html

?

?