小编Lia*_*eri的帖子

大量行中查找、散列值和替换的并发性

我有一堆文件,每一行都有一个我试图用散列模糊的唯一值。

然而,文件中有 300 万行,粗略计算完成该过程所需的时间非常长,为 32 天。

for y in files*; do 
  cat $y | while read z; do
    KEY=$(echo $z | awk '{ print $1 }' | tr -d '"')
    HASH=$(echo $KEY | sha1sum | awk '{ print $1 }')
    sed -i -e "s/$KEY/$HASH/g" $y
  done
done
Run Code Online (Sandbox Code Playgroud)

为了提高这个过程的速度,我假设我将不得不引入一些并发性。

基于https://unix.stackexchange.com/a/216475 的仓促尝试导致我

N=4
(
for y in gta*; do 
  cat $y | while read z; do
    (i=i%N)); ((i++==0)); wait
    ((GTA=$(echo $z | awk '{ print $1 }' | tr -d …
Run Code Online (Sandbox Code Playgroud)

sed hashsum concurrency

4
推荐指数
1
解决办法
170
查看次数

标签 统计

concurrency ×1

hashsum ×1

sed ×1