как извлечь из множества папок все файлы определённого расширения linux
Для извлечения всех файлов определённого расширения из множества папок в Linux можно использовать команду find
. Вот пример команды, которая ищет все файлы с определённым расширением (например, .txt
) в текущей директории и всех её поддиректориях:
find . -type f -name "*.txt"
Здесь:
.
указывает на текущую директорию. Вы можете заменить её на другой путь, если хотите искать в другой директории.-type f
указывает, что мы ищем файлы.-name "*.txt"
указывает, что мы ищем файлы с расширением .txt
.Если вы хотите скопировать все найденные файлы в другую директорию, можно использовать команду cp
в сочетании с xargs
:
find . -type f -name "*.txt" -print0 | xargs -0 cp -t /path/to/destination/
Здесь:
-print0
и -0
используются для обработки имён файлов с пробелами./path/to/destination/
замените на путь к директории, куда вы хотите скопировать файлы.Если вы хотите переместить файлы вместо копирования, замените cp
на mv
:
find . -type f -name "*.txt" -print0 | xargs -0 mv -t /path/to/destination/
Эти команды помогут вам эффективно управлять файлами с определённым расширением в