【发布时间】:2015-04-13 22:59:18
【问题描述】:
问题: 要在 MAC OS 中获取文件的 sha1sum 值,我运行以下命令
sha1sum file_name
我得到的错误如下
perl version 5.18.2 can't run /usr/bin/sha1sum. Try the alternative(s):
/usr/bin/sha1sum5.16 (uses perl 5.16)
Run "man perl" for more information about multiple version support in
Mac OS X.
我尝试安装 textutils 和 coreutils,但都失败了。谁能建议我如何解决这个问题?提前致谢。
【问题讨论】:
-
你为什么不把
sha1sum别名为/usr/bin/sha1sum5.16? -
我正在从 python 脚本调用 sha1sum,而不仅仅是试图找到一个特定的文件。
-
我明白,但这真的有关系吗?我假设您只是在执行 shell 脚本/二进制文件,所以我所说的只是使用符号链接或别名来执行您需要的二进制文件。显然你想要的命令是存在的,只是对于安装的 Perl 和 OS 版本的名称不同。另外,我很难相信 Python 没有获取 sha1 校验和的工具——为什么不使用它来减少外部依赖?
-
就安装而言,您是否尝试使用 Macports 或 Homebrew?
-
我宁愿直接在 Python 代码中进行散列,而不是调用外部程序。它的代码多一点,但可能更有效。它还使您摆脱了外部依赖。见pythoncentral.io/hashing-files-with-python。