Почему "find . -Iname "*.jpg" -type f -print0 | xargs -0 rm * " удаляет все файлы?

Ожидаемое поведение состояло в том, чтобы удалить все файлы.jpgs, но он удалил все файлы в каталоге.

Как изменить команду, чтобы найти и удалить все файлы xyz?

1 ответ

Решение

Вы казнили rm * result1.jpg result2.jpg result3.jpg ...не rm result1.jpg result2.jpg result3.jpg ...тем самым удаляя все совпадающие * через расширение оболочки.

Но вам даже не нужно xargs для этой простой задачи.


Бежать find ... -type f -print во-первых, если вы не уверены в своем выражении. Убедитесь, что вам понравились результаты.

Затем беги find ... -type f -delete,

Другие вопросы по тегам