各行の最初の単語をMD5に置き換えます。

各行の最初の単語をMD5に置き換えます。

私のファイルには、1行に2つのスペースで区切られた単語があります。私は各行の最初の単語をmd5ハッシュ表現に置き換えるUnixのシェルスクリプトを探しています。

言及した内容を調整してみました。awk列をハッシュ値に置き換える

ただし、このソリューションから返されたmd5ハッシュ値は間違っているようです。

md5(is) = a2a551a6458a8de22446cc76d639a9e9

ベストアンサー1

非効率的でおそらく最適ではないかもしれない答えの場合:

while read -r first rest; do
    echo "$(echo -n $first | md5sum | awk '{ print $1 }') $rest"
done <input_file

これにより、最初の単語と行の残りの部分の間のスペースは削除されますが、後続の単語(存在する場合)の間のスペースは保持されます。

おすすめ記事