1

我想像这样打印字段编号和字段... awk 是最好的方法吗?如果有怎么办?输入行中的字段数可能会有所不同。

input_line ="a|b|c|d" 
expected result:
1 a
2 b
3 c
4 d

我可以打印字段,但需要帮助打印字段编号。这就是我所拥有的

echo "a|b|c|d" |awk -F"|" '{for (i=1; i<=NF; i++) print $i}'
a
b
c
d
4

2 回答 2

2

您可以使用 awk 命令,例如:

echo "a|b|c|d" | awk -F"|" '{for(i=1; i<=NF; i++) print i, $i}'
于 2013-03-26T19:14:42.593 回答
0

awk使用while循环应该可以解决问题:

awk -F '|' '{ i = 1; while (i <= NF) { print i " " $i; i++; } }' <<< "a|b|c|d"
于 2013-03-26T19:17:05.690 回答