690070 690070 A
690451 690451 B
690571 690571 C
690578 690578 D
690637 690637 F
如何使用序列号替换第一列值,从1 ... n开始。所以它变成了:
1 690070 A
2 690451 B
3 690571 C
4 690578 D
5 690637 F
可以在Vim或某些linux命令中完成吗?
答案 0 :(得分:3)
您可以使用awk或vim宏。 awk 非常适合此类文字操作
awk '{count++; print count " " $2 " "$3;}' data.stat > /tmp/data.stat && mv /tmp/data.stat data.stat
答案 1 :(得分:1)
在Vim中:
:let i=1 | g/^[^/\t]*\t/s//\= i. "\t"/ | let i=i+1
<强>更新强>
要拆分前两列并保存到另一个文件,
我建议在Tomᚊíma的回答中使用awk
,具体为:
awk '{print $1 "\t" $2;}' data.stat > newfilename.txt
如果你想在Vim中做所有事情:
:w newfilename.txt
:o newfilename.txt
:%s/^\([^\t]*\)\t\([^\t]*\).*$/\1\t\2/g
:w newfilename.txt