md5ハッシュのみをgrepする必要があります
これがハッシュです
MD5 (mt.pm) = adcddd9492c707642d2bcffbfc67b7a6
このように見える必要があります
adcddd9492c707642d2bcffbfc67b7a6
またはその逆をする
crapb0c63a3cb776502fe03706b2fd540439 /home/mta.pm"
ハッシュを取得するだけで、ヘルプの方法の手がかりが得られます
md5ハッシュのみをgrepする必要があります
これがハッシュです
MD5 (mt.pm) = adcddd9492c707642d2bcffbfc67b7a6
このように見える必要があります
adcddd9492c707642d2bcffbfc67b7a6
またはその逆をする
crapb0c63a3cb776502fe03706b2fd540439 /home/mta.pm"
ハッシュを取得するだけで、ヘルプの方法の手がかりが得られます
grep を実行するには、次のようにします (これはすべてのgrep 実装で機能するとは限りません)。
grep -o '[a-z0-9]*$'
またはsedを使用できます:
sed 's/.*= *\([a-z0-9]*\)$/\1/'
これを試してください ( GNU grep
):
grep -oP '.* \K.*$'
またはそれ以上:
grep -o '[[:xdigit:]]\{32\}$'
またはbash
:
read -a arr <<< 'MD5 (mt.pm) = adcddd9492c707642d2bcffbfc67b7a6'
echo ${arr[-1]}
それははるかに\{32\}
強いです。md5
常に 32 文字の 16 進数です。http://en.wikipedia.org/wiki/MD5を参照してください。
[[:xdigit:]]
はPOSIX クラスの regexです。つまり、16 進文字のみに一致することを意味します。
最後に
文字列内の 32 個の 16 進文字に一致させたい場合:
grep -o '[[:xdigit:]]\{32\}'
トリックを行います。