find -type f -name "*.avi" -exec md5sum {} + > checklist.chk
find -type f -name "*.mp4" -exec md5sum {} + > checklist.chk
如何结合这两个命令?
通过将两个搜索词组合在一个命令中或
以便每个命令都将其输出添加到同一个文件。
希望您清楚我想做什么。
答案1
合并:
find -type f \( -name "*.avi" -or -name '*.mp4' \) -exec md5sum {} + > checklist.chk
将输出添加到一个文件:
find -type f -name "*.avi" -exec md5sum {} + > checklist.chk
find -type f -name "*.mp4" -exec md5sum {} + >> checklist.chk
答案2
有很多方法可以做到这一点:
使用或-o
:
find . -type f \( -name '*.avi' -o -name '*.mp4' \) -exec md5sum {} + > checklist.chk
使用正则表达式:
find . -type f -regextype posix-extended -regex '.*\.(avi|mp4)$' -exec md5sum {} + > checklist.chk
两者都会将输出写入文件checklist.chk
。
答案3
使用-o
标志(位于find
手册页中的 OPERATORS 下)
find . -type f \( -name "*.avi" -o -name "*.mp4" \) -exec md5sum {} + > checklist.chk