1

我有一个运行备份作业并生成 csv 文件的 bash 脚本。

90927597|1356976813998|90927598

如何增加/更改 CSV 文件第三列的值?(我实际上只是想使用随机值使它成为 uniq )。

我怎样才能做到这一点?

谢谢

4

1 回答 1

2

给定文件ased 's/hello/bye/g a' replaces all ocurrencies of你好,with再见in the file

$ cat a
90927597|1356976813998|90927598
$ sed 's/90927598/hello/g' a
90927597|1356976813998|hello
$ 
$ sed -i 's/90927598/hello/g' a
$ cat a
90927597|1356976813998|hello

也就是说,sed -i替换文件。没有-i它会在标准输出上显示替换。


第三列中的每个值对于每一行都有不同的值,你认为这可能吗?只是随机的,或者使用相同的值 + 随机值,这个想法只是为了让它 uniq

$ awk -v v=YOUR_SEED 'BEGIN {FS = "|"; OFS="|" } $3=++v' a > output_file

(想法来自jthill 评论

于 2013-05-10T19:25:13.947 回答