file.txt的内容:
"16875170";"172";"50"
"11005137";"28";"39"
"16981017";"9347";"50"
"13771676";"13";"45"
"5865226";"963";"28"
结果文件:
"1";"16875170";"172";"50"
"2";"11005137";"28";"39"
"3";"16981017";"9347";"50"
"4";"13771676";"13";"45"
"5";"5865226";"963";"28"
最佳答案
awk
可以很容易地为您做到这一点。
$ cat test.txt
"16875170";"172";"50"
"11005137";"28";"39"
"16981017";"9347";"50"
"13771676";"13";"45"
"5865226";"963";"28"
$ awk '{print "\""NR"\";"$0}' test.txt
"1";"16875170";"172";"50"
"2";"11005137";"28";"39"
"3";"16981017";"9347";"50"
"4";"13771676";"13";"45"
"5";"5865226";"963";"28"
这告诉 awk 打印文字 "
,然后是记录号,然后是 ";
,然后是该行的其余部分。根据未说明的其他需求(例如,引用不是完全必要的),可能有更好的方法可以使用,但考虑到问题和输出,这是可行的。
有趣的 Grep 解决方案:
$ grep ".*" test.txt -n | sed 's/\([0-9]*\):/"\1";/g;'
"1";"16875170";"172";"50"
"2";"11005137";"28";"39"
"3";"16981017";"9347";"50"
"4";"13771676";"13";"45"
"5";"5865226";"963";"28"
关于linux - 如何向文件添加行号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43641022/