Jon*_*n17 5 shell-script hashsum
所以我正在尝试使用 shell 脚本检查数十个文件。文件检查发生在不同的时间。
有没有办法做到这一点?
md5sum -c 24f4ce42e0bc39ddf7b7e879a File.name
Run Code Online (Sandbox Code Playgroud)
甚至更好的 sha512sum
sha512sum -c 24f4ce42e0bc39ddf7b7e879a File.name
Run Code Online (Sandbox Code Playgroud)
现在我必须这样做:
md5sum -c file.md5sums File.name
Run Code Online (Sandbox Code Playgroud)
或者更好的是,我可以将所有 md5sum 放在一个文件中,然后像这样检查它们:
md5sum -c `sed 1p file.md5sums` File.name
md5sum -c `sed 2p file.md5sums` File.name
md5sum -c `sed 3p file.md5sums` File.name
md5sum -c `sed 4p file.md5sums` File.name
Run Code Online (Sandbox Code Playgroud)
拥有数十个包含单个条目的文件似乎很愚蠢。
如果您在脚本中执行此操作,那么您只需进行简单的比较检查即可,例如
if [ "$(md5sum < File.name)" = "24f4ce42e0bc39ddf7b7e879a -" ]
then
echo Pass
else
echo Fail
fi
Run Code Online (Sandbox Code Playgroud)
注意多余的空格和-
需要匹配 md5sum 的输出。
如果它看起来更干净,你可以把它做成单行
[[ "$(md5sum < File.name)" = "24f4ce42e0bc39ddf7b7e879a -" ]] && echo Pass || echo Fail
Run Code Online (Sandbox Code Playgroud)