2013-07-18 33 views
-1

例如,有tmp.dat,在命名的數據文件,該數據是這樣的形式:如何通過awk命令減少數據?

x1 x2 x3 x4 x5 x6 x7 

. . . . . . . 

我的目標是隻提取X3和X4這兩個列。

我該如何使用awk的命令來完成這個簡化工作?

我知道使用C/C++打開命令的方法,但這很麻煩。

+0

我低估了這個問題,因爲你可以很容易地在網上找到答案。 – Bernhard

回答

2

您的意思是這樣的?

cut -d' ' -f3,4 tmp.dat 
3

試試這個:

awk '{print $3,$4}' tmp.dat 
+0

謝謝,它的工作原理。 –

1

簡單:

$ awk '{print $3,$4}' file 

你做任何研究嗎?

+0

對不起,我是awk中的新成員。謝謝,它的作品。 –

+1

您需要閱讀http://stackoverflow.com/help –

1

cutawk是你最好的選擇。這裏是你如何在bash做:

while read -ra line; do echo "${line[2]} ${line[3]}"; done < tmp.dat 
+0

謝謝,它的工作原理。 –

0

代碼GNU

 
$ echo x1 x2 x3 x4 x5 x6 x7|sed -r 's/(\S+\s+){2}(\S+\s+\S+).*/\2/' 
x3 x4 

\S+\s+約爲$x(AWK)。

0
perl -lane 'print "@F[2,3]"' your_file