我有以下文件:
ID firstname lastname
1 John Wilkens
2 Andrea Smith
我想在 ID 字段中的数字之前为文件中的每一行添加以下字符串:“del_”,因此输出将如下所示:
ID firstname lastname
del_1 John Wilkens
del_2 Andrea Smith
我怎样才能实现这个目标?
答案1
使用标准sed
做同样的操作:
sed '2,$ s/^/del_/' file
这会将替换 ( s///
) 应用于第二行和文件末尾之间的所有行(包括范围2,$
)。替换只是将字符串插入del_
到每个寻址行的开头。
答案2
awk '{print (NR>1 ? "del_" : "") $0}' file
答案3
使用perl
:
perl -lpe '$_ = "del_" . $_ if $. > 1' data
答案4
另一种awk
变体:
awk 'NR>1{ sub(//, "del_") }1' infile