我有一个包含许多行和列的文本文件,如下所示:
a b c d ...
e f g h ...
i j k l ...
...
我想为每个条目添加列索引,输出看起来像这样
1:a 2:b 3:c 4:d ...
1:e 2:f 3:g 4:h ...
1:i 2:j 3:k 4:l ...
...
我想知道是否有一种简单的方法可以在bash中实现这一点。谢谢!
答案 0 :(得分:1)
使用awk:
awk '{for (i=1;i<=NF;i++){printf i":"$i" "};printf "\n"}' file
输出:
1:a 2:b 3:c 4:d 5:... 1:e 2:f 3:g 4:h 5:... 1:i 2:j 3:k 4:l 5:... 1:...
答案 1 :(得分:1)
使用perl:
perl -lane '$, = " "; print map { (1 + $_) . ":$F[$_]" } 0 .. $#F' file
# or
perl -lane '$, = " "; $i = 1 ; print map { $i++ . ":$_" } @F' file