假设我有如下所述的matrix.txt文件
3 4 2 2 5
1 2 3 7 6
3 5 6 7 5
9 0 8 6 5
7 6 8 9 5
现在我想用bash读取和输出前3行和3列,有人可以帮我怎么做吗?
非常感谢您!
答案 0 :(得分:1)
$ awk 'NR>3{exit} {print $1,$2,$3}' matrix.txt
3 4 2
1 2 3
3 5 6
NR
:行数。
$1,$2,$3
:第一,第二和第三列
要打印n
行和m
列:
$ awk -v row=3 -v col=3 'NR>row{exit} {for (i=1; i<=col; i++)printf $i" "; print ""}' matrix.txt
3 4 2
1 2 3
3 5 6
答案 1 :(得分:0)
使用切割也许是最简单的
cut -d' ' -f1-3 matrix.txt | head -3