我们在写shell的时候常常会遇到显示MD5值的情况。
但是我们常常的使用echo显示命令,就会出现问题。下面举个例子:
[root@Xiaoqiao ~]# echo abcd |md5sum
f5ac8127b3b6b85cdc13f237c6005d80 -
如果使用printf就会是:
[root@Xiaoqiao ~]# printf abcd |md5sum e
e2fc714c4727ee9395f324cd2e7f331f -
那应该使用哪个?
我们man一下
echo - display a line of text 用途是:输出文本行或变量
printf - format and print data 用途是:描述格式规格的字符串
由此可见echo只限于显示文本而像MD5值这样的特殊字符串,只有使用printf才是正确的。也告诉我们echo与printf的区别。
转载于:https://blog.51cto.com/yjw1983/521125