shell - awk 用它的散列值替换一列

标签 shell sed awk

如何在 awk 或 sed 中用其哈希值(如 MD5)替换列?

原始文件非常大,所以我需要它才能真正高效。

最佳答案

我复制粘贴了 larsks 的回复,但我添加了关闭行,以避免出现本文中指出的问题:gawk / awk: piping date to getline *sometimes* won't work

awk '{
    tmp="echo " $2 " | openssl md5 | cut -f2 -d\" \""
tmp | getline cksum
close(tmp)
$2=cksum
print
}' < sample 

关于shell - awk 用它的散列值替换一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8024392/

相关文章:

linux - AWK 计算术语相对于其他列出现的次数

python - 如何使使用 call/Popen 调用的子进程继承环境变量

Unix:获取导出路径到 "Stick"

awk - 在文件名中与模式匹配的特定位置插入文本

shell - 仅当在 sed 中匹配时才打印特定行号

linux - 在 Linux 上删除 Windows 换行符(sed 与 awk)

linux - 更改文件中附加数字的单词

linux - 如何使用 bash 查找某个文件中的哪些行不是由另一个文件中的行开始的?

java - 使用 Runtime.getRuntime 在 Android 上运行 shell 命令

linux - 如何在 awk 中使用多个操作来编辑文本文件