我有一堆文件,每一行都有一个我试图用散列模糊的唯一值。
然而,文件中有 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)