在macOS(Mojave)上,“shasum”命令是否有一个选项,它只返回没有文件名的哈希值?
$ shasum -a 256 archive.tar.gz
35fe34e225a06d......00e72ee61a437b7226f9f archive.tar.gz
我当前的解决方法在macOS的默认状态下工作(没有额外的安装):
$ shasum -a 256 archive.tar.gz | awk '{ print $1 }'
35fe34e225a06d......00e72ee61a437b7226f9f
$ php -r "echo hash_file('sha256', 'archive.tar.gz'), PHP_EOL;"
35fe34e225a06d......00e72ee61a437b7226f9f
但是,如果有一个命令选项,我想让它变得更简单。
是否有任何命令选项或我是否必须为变通方法做出别名?
数组赋值有效:
sha=($(shasum -a 256 archive.tar.gz))
echo $sha
35fe34e225a06d......00e72ee61a437b7226f9f
或者你可以使用cut:
shasum -a 256 archive.tar.gz | cut -f1 -d' '
35fe34e225a06d......00e72ee61a437b7226f9f