
Как удалить все run-*.achilles
каталоги во всех моих подкаталогах в Linux?
Я попробовал find /path -name run-*.achilles -type f -delete
, но не получилось.
решение1
Здесь есть несколько вопросов:
- Вам следует заключать их в кавычки
*
, чтобы избежать подстановки оболочки. -type f
говорит,find
что вам нужны файлы.find -delete
не удаляет непустые каталоги.Посмотреть этот вопрос. Исправленное решение из одного из ответов там:find /path -path '*/run-*.achilles/*' -delete find /path -type d -name 'run-*.achilles' -empty -delete
Это не идеально, первая строка будет соответствовать .../run-a/b.achilles/...
. Я думаю. Эта команда должна соответствовать лучше:
find /path -type d -name 'run-*.achilles' -exec rm -rf {} +
Он использует rm -rf
, поэтому будьте с ним осторожны.