如何选择特定的行和列

dem*_*et8 3 linux shell awk cut sed

我需要选择例如:

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

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

这是我迄今为止尝试过的:

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

Hai*_* Vu 5

仅 awk 就可以完成:

awk 'NR==7{print $2} NR==8{print $3} NR==11{print $1, $3}' Old_file > New_file
Run Code Online (Sandbox Code Playgroud)

  • `NR=8` 中有一个拼写错误。就像那样,它会打印每一行的第三个字段。`NR==8`更好。 (2认同)