我正在尝试使用unix向特定字符串添加计数器,我尝试了一些sed和awk命令,但我似乎无法正确执行此操作。
我的输入文件是:
Event_ A D L K
Event_ B P R
Event_ C F I
Event_ J K
M
N
O
Event_ Q S
X
Y
Z
G
T
我希望得到的是:
Event_00000001 A D L K
Event_00000002 B P R
Event_00000003 C F I
Event_00000004 J K
M
N
O
Event_00000005 Q S
X
Y
Z
G
T
有人可以帮忙吗?
答案 0 :(得分:3)
使用此awk
:
awk '/^Event/{$1=sprintf("%s%06d", $1,++counter)}1' yourfile
如果字段由\t
(Tab)分隔,
awk -F"\t" '/^Event/{$1=sprintf("%s%06d", $1,++counter)}1' OFS='\t' yourfile
<强>测试强>
$ awk '/^Event/{$1=sprintf("%s%06d", $1,++counter)}1' file
Event_000001 A D L K
Event_000002 B P R
Event_000003 C F I
Event_000004 J K
M
N
O
Event_000005 Q S
X
Y
Z
G
T