我有一个运行备份作业并生成 csv 文件的 bash 脚本。
90927597|1356976813998|90927598
如何增加/更改 CSV 文件第三列的值?(我实际上只是想使用随机值使它成为 uniq )。
我怎样才能做到这一点?
谢谢
给定文件a
,sed '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 评论)