Удаление всех файлов из папки с помощью поиска строки в Unix - PullRequest
0 голосов
/ 30 октября 2009

Я работаю над солярисом. Как мне удалить все файлы в папке, в которых есть слово «Ошибка»?

Я пробую что-то в следующих строках, но, похоже, это ничего не удаляет.

rm -rf | find ./*.log -exec grep 'Failure' \;

Цените ваши входные данные.

Ответы [ 3 ]

0 голосов
/ 30 октября 2009

Вы должны перевернуть это. Используйте find, чтобы найти файлы, а затем используйте параметр -exec с командой rm.

0 голосов
/ 30 октября 2009

Если я правильно интерпретирую, вам не требуется рекурсивный поиск, поэтому что-то вроде:

rm -f `grep -m 1 'Failure' ./*.log | cut -d: -f1`

должно работать. Если нет, попробуйте:

rm -f `grep 'Failure' ./*.log | cut -d: -f1 | uniq`
0 голосов
/ 30 октября 2009
find . -type f -name \*Failure\* -exec rm {} \;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...