2012-10-16 69 views
1

如何选择我需要选择例如特定行和列

  • 列第7行的2
  • 列行的3分8.
  • 列1和行11
  • 的3

一个特定的文件,并将结果放在另一个文件中。

这是我到目前为止已经试过:

sed -n -e '7p' -e '8p' -e '11p' Old_File | awk '{printf("%s %s %s\n", $2, $3, $1);}' > New_File. 

回答

2

awk中单独可以完成它:

awk 'NR==7{print $2} NR==8{print $3} NR==11{print $1, $3}' Old_file > New_file 
+0

非常感谢。 Awk是一只野兽,我真的想把头围绕在它身上。 – demet8

+2

'NR = 8'有一个错字。就像它会打印每一行的第三个字段。 'NR == 8'更好。 – Birei

+0

谢谢Birei和约翰卫斯理王子。 –

2

Awk是足够多的该任务:

awk ' 
    FNR == 7 { print $2; next; } 
    FNR == 8 { print $3; next; } 
    FNR == 11 { print $1, $3; exit; } 
' input-file 
+0

Birei谢谢编辑我的问题并回答。 – demet8