find -type f -name "*.avi" -exec md5sum {} + > checklist.chk
find -type f -name "*.mp4" -exec md5sum {} + > checklist.chk
Как объединить эти две команды?
Либо путем объединения обоих поисковых терминов в одной команде, либо для того, чтобы каждая команда добавляла свой вывод в тот же файл.Надеюсь, ясно, что я пытаюсь сделать.
Есть много способов сделать это:
Использование Or -o:
find . -type f \( -name '*.avi' -o -name '*.mp4' \) -exec md5sum {} + > checklist.chk
Использование Regex:
find . -type f -regextype posix-extended -regex '.*\.(avi|mp4)$' -exec md5sum {} + > checklist.chk
Оба будут писать вывод в файл checklist.chk.
С флагом -o (который находится под OPERATORS на странице man find]
find . -type f \( -name "*.avi" -o -name "*.mp4" \) -exec md5sum {} + > checklist.chk