gpt4 book ai didi

linux - 如何使用 AWK 或 SED 为文件中的每一行生成 UUID?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:15:38 28 4
gpt4 key购买 nike

我需要为文件的每一行附加一个 UUID(为每一行新生成的唯一的)。对于此事件,我更愿意使用 SED 或 AWK,并利用我的 linux 机器上的 UUIDGEN 可执行文件。我不知道如何为每一行生成 UUID 并附加它。

我试过:

awk '{print system(uuidgen) $1} myfile.csv
sed -i -- 's/^/$(uuidgen)/g' myfile.csv

还有许多其他不起作用的变体。这可以用 SED 或 AWK 来完成,还是我应该研究另一个不基于 shell 脚本的解决方案?

真诚的,斯蒂芬。

最佳答案

使用 bash,这将创建一个带有串联 uuid 的文件 outfile.txt:

注意:请运行 which bash 以验证您的系统上 bash 副本的位置。它可能与以下脚本中使用的位置不同。

#!/usr/local/bin/bash

while IFS= read -r line
do
uuid=$(uuidgen)
echo "$line $uuid" >> outfile.txt
done < myfile.txt

我的文件.txt:

john,doe
mary,jane
albert,ellis
bob,glob
fig,newton

输出文件.txt

john,doe 46fb31a2-6bc5-4303-9783-85844a4a6583
mary,jane a14bb565-eea0-47cd-a999-90f84cc8e1e5
albert,ellis cfab6e8b-00e7-420b-8fe9-f7655801c91c
bob,glob 63a32fd1-3092-4a72-8c24-7b01c400820c
fig,newton 63d38ad9-5553-46a4-9f24-2e19035cc40d

关于linux - 如何使用 AWK 或 SED 为文件中的每一行生成 UUID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38339030/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com