2014-11-03 4 views
0

У меня есть файлы, чье имя отправлено (копия), которую я хочу удалить. Например: f1.jpg, f1 (копия) .jpg, f2.jpg, f2 (копия) .jpg. Какую команду я могу использовать для удаления всех файлов копирования?Как удалить файлы с шаблоном?

ответ

4

Вы можете использовать команду rm для удаления файлов: необходимы

rm *\(copy\)* 

В \ потому, что круглые скобки являются особенными для оболочки. Альтернативно, rm *copy*.

0

пожалуйста, попробуйте это, если вы rm -rf "*\(copy\)*.jpg"

+2

С цитированием вы подавляете глобусы. – Cyrus

2

Или find с прекрасной (без POSIX) -delete переключателя:

find . -maxdepth 1 -name '*(copy).jpg' -type f -delete 

Это может быть выше комки в случае, если вы имеете намного файлов , где globs даст Список аргументов слишком длинный ошибка. Это может быть быстрее и в случае большого количества файлов. Переключатель -maxdepth 1 (не POSIX), чтобы избежать рекурсии в подкаталоги. Коммутатор -type f работает только с файлами. Вы можете добавить переключатель -print, если хотите, какие файлы будут удалены.

Смежные вопросы