在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
但是,如果要使用命令选项,我想使其更简单。
是否有任何命令选项,或者我必须对这些变通方法做一个别名?
答案 0 :(得分:3)
数组分配起作用:
sha=($(shasum -a 256 archive.tar.gz))
echo $sha
35fe34e225a06d......00e72ee61a437b7226f9f
或者您可以使用cut:
shasum -a 256 archive.tar.gz | cut -f1 -d' '
35fe34e225a06d......00e72ee61a437b7226f9f