Я новый (иш) для использования Bash, и я пытаюсь понять, как объединить несколько разных вещей в один скрипт.Bash: Список каталогов с типом файла, но отсутствует файл другого типа
Я ищу передачи файлов, которые были прерваны. Эти папки содержат файлы изображений (или jpgs или png), но отсутствуют другой конкретный файл (готовый.txt).
Вот что я использую, чтобы найти папки с изображениями (из here):
for f in */incoming/ ; do
log_f="${f//\//}"
echo "searching $f"
find "$f" -iname "*jpg*" -o -iname "*png*" > "/output/${log_f}.txt"
echo "$f finished"
done
Тогда я бег этой команды, чтобы найти папки, которые отсутствуют файл finished.txt (от here):
find -mindepth 2 -maxdepth 2 -type d '!' -exec test -e "{}/finished.txt" ';' -print
есть ли способ, чтобы объединить их, так что я список папок, которые имеют JPG или PNG файлов, но не имеют finished.txt? Кроме того, если я хочу добавить -mtime, где я могу это поставить?
В качестве альтернативы, если есть лучший/более быстрый способ сделать это, я тоже заинтересован в этом.
Спасибо!
Спасибо за это. По какой-то причине я получаю это: 'find: '': Нет такого файла или каталога' – Amy
Надеюсь, вы настроите f, который параметризуется в приведенной выше команде« $ f ». Итак, что-то вроде f =/Users/guest/mydirectory, а затем выполните приведенную выше команду. –