我想在UNIX变体上的命令行上执行类似的操作
if (shasum httpd-2.4.7.tar.bz2 == 19asdasdasd56462e44d61a093ea57e964cf0af05c0e) echo 'good to go'
我不想编写一个单独的脚本文本页面来进行检查。
以上是语法错误。
但是必须有一种巧妙的方法来解决这个问题吗?
这该怎么做?
最佳答案
shasum httpd-2.4.7.tar.bz2 |
awk '$1=="19asdasdasd56462e44d61a093ea57e964cf0af05c0e"{print"good to go"}'
所以通常您从shasum获得此输出
19asdasdasd56462e44d61a093ea57e964cf0af05c0e *httpd-2.4.7.tar.bz2
What my command does it is takes the first field $1
, and compares it againstyour string. If the strings match, then awk prints "good to go".
Note that for anything other than sha-1
, you need to specify your algorithm. For example, for sha 256
, you can do:
shasum -a256 httpd-2.4.7.tar.bz2
-a
标志指定算法。关于bash - 如何通过命令行检查校验和?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21956954/