Краткий совет по Linux:
Вы можете использовать опцию "-exec" команды find, чтобы вызвать внешнюю программу для выполнения определенного действия над найденными файлами, которые соответствуют определенным критериям.
Например, удаление файлов, вывод списка разрешений на файлы и т. д.
$ find ~/ -type f -exec ls -lah {} \;
Это полезно при выполнении одного и того же действия с несколькими файлами в разных местах.
Приведенная выше команда является примером вывода списка разрешений и других метаданных каждого файла, который находит команда find.
Разбор опции -exec:
• exec ls — сообщает find о необходимости выполнения команды ls для каждого имени файла, соответствующего строке поиска.
• -lah — отображает все файлы, включая скрытые, их разрешения и другие метаданные файлов, такие как размеры, в удобном для чтения формате.
• {} - Плейсхолдер {} представляет имя каждого файла и должен быть последним элементом в списке параметров.
• ; - Для обозначения конца списка параметров используется точка с запятой ";". Она должна быть экранирована обратной косой чертой "\", иначе оболочка ее интерпретирует.
Вы также можете использовать + вместо ; для обозначения конца списка параметров. Между + и фигурными скобками " {} " должен быть пробел.
Вы можете выполнить несколько команд, используя -exec в find. Например, следующая команда вычисляет количество слов в текстовых файлах и их использование на диске за один вызов:
$ find . -name " *. txt" -exec wc {} \; -exec du -sh {} \;
Post #1630
2.35K
- 🔥 12
- 👏 1