В одну сторону:
set -- $(md5sum $file)
md5=$1
По-другому:
md5=$(md5sum $file | while read sum file; do echo $sum; done)
По-другому:
md5=$(set -- $(md5sum $file); echo $1)
(Не пытайтесь делать это с обратными галочками, если вы не очень смелы и очень хорошо справляетесь с обратными слешами.)
Преимущество этих решений перед другими решениями состоит в том, что они вызывают только md5sum
оболочку, а не другие программы, такие как awk
или sed
. Имеет ли это значение на самом деле - это отдельный вопрос; вам, вероятно, будет трудно заметить разницу.