从 sha512sum 的输出中隐藏文件名

从 sha512sum 的输出中隐藏文件名

也许这是一个微不足道的问题,但在man页面中我没有找到有用的东西。我正在使用 Ubuntu 和bash.

正常输出sha512sum testfile

<hash_code>  testfile

如何抑制文件名输出?我想获得只是

<hash_code>

答案1

没有办法抑制这种情况,但由于 SHA 始终是一个不带空格的单词,因此您可以执行以下操作:

sha512sum testfile | cut -d " " -f 1 

或例如

< testfile sha512sum | sed 's/  -//'

答案2

sha512sum testfile | awk '{print $1}'

答案3

也许只需~/.profile按照 Anthon 削减第一个参数的方式添加一个别名将有助于作为永久解决方案,

sha()
{
sha512sum -- "$1" | cut -d " " -f 1
}

为了让它工作,我们显然需要运行它一次,. .profile~.

现在只放sha <file_name>就会产生你希望的方式。

答案4

我也对我使用的 sha??sum stdout 格式感到沮丧;

sha512sum | tr " " "\n" | head -n 1

相关内容