我需要递归地找到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!
答案 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
会为您提供所需的结果。