linux的shell,怎么把一个文件的md5值赋值到一个数组里 类似 a[1]=m...
发布网友
发布时间:2022-04-26 18:42
我来回答
共2个回答
热心网友
时间:2023-01-22 12:20
注意,命令引起来的是tab键上面那个,而不是单引号
解释:
md5sum a.txt的结果例如是
3a5cacda937fbe71fcb72cfe4904dee8 a.txt
前面是MD5值,a.txt是你指定的文件名,我们要取前面那部分,有2个方法:
方法一,也就是xiehuahere的回答:
a[1]=`md5sum a.txt | cut -d' ' -f1`
其中cut的-d,是指定空格为分隔符,-f1是指定取分隔后的第一个字串,就是我们要的MD5值了。
方法二:
md5sum a.txt | awk -F ' ' '{print $1}'
awk的-F ' ',是指定空格为分隔符,是指定空格为分隔符,是指定取分隔后的第一个字串,也是我们要的MD5值。
赋值除了使用“`”反引号,还可以这样,例:
a[1]=$(md5sum a.txt | cut -d' ' -f1)
a[1]=$(md5sum a.txt | awk -F ' ' '{print $1}')
热心网友
时间:2023-01-22 13:38
a[1]=`md5sum a.txt | cut -d' ' -f1`