格式化md5sum不同?

时间:2014-10-31 23:37:51

标签: linux bash

我需要递归地找到md5sum文件并按字母顺序列出这些文件。但是,在我的最终输出中,我并不希望实际显示总和。例如,如果我发出:

find -not -empty -type f -exec md5sum "{}" \; 

我明白了:

0df8724ef24b15e54cc9a26e7679bb90  ./doc1.txt
d453430ce039863e242365eecaad7888  ./doc2.txt
53b2e8ae1dfaeb64ce894f75dd6b957c  ./test.sh~
1ba03849883277c3c315d5132d10d6f0  ./md5file.txt
6971b4dbbd6b5b8d1eefbadc0ecd1382  ./test.sh

是否有一种简单的方法使此命令仅显示如下文件:

./doc1.txt
./doc2.txt
./test.sh~
./md5file.txt
./test.sh

THX!

2 个答案:

答案 0 :(得分:0)

将find命令的输出传递给awk或cut。

find -not -empty -type f -exec md5sum "{}" \; | awk '{print $2}'

如果文件名包含空格,请使用sed。

find -not -empty -type f -exec md5sum "{}" \; | sed 's/^[^ ]\+ \+//'

答案 1 :(得分:0)

正如Cyrus和Sriharsha所说,只需使用:

find -not -empty -type f

会为您提供所需的结果。