Как объединить файлы с разными расширениями из подкаталогов в один файл с помощью команды find и cat

find . -type f -name *.ext -exec cat {} > file.txt \;


Команда ищет все файлы с расширением «.ext» в текущей директории и в поддиректориях, и объединяет их содержимое командой cat в файл «file.txt». Знак «{}» означает, что для каждого найденного файла будет выполнен вызов команды cat. Сама команда «cat» объединяет содержимое файлов, а знак «>» перед названием выходного файла говорит о том, что вывод должен быть перенаправлен в файл, а не выведен на экран. Альтернативой могут быть команды «cat *.ext > file.txt» или «cat $(find . -type f -name ‘*.ext’) > file.txt», но они не будут рекурсивно искать файлы в поддиректориях. Аргумент «{}» передается команде для замены на имя каждого найденного файла.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *