Главная > HOW-TO, Unix and Linux > Как удалить файлы из списка?

Как удалить файлы из списка?

Команда rm не принимает перенаправление ввода, поэтому rm < files-to-remove.txt работать не будет.

Можно использовать:

  1. rm `cat files-to-remove.txt`
  2. xargs rm < files-to-remove.txt
  3. Небольшой скрипт:
    foreach i (`cat files-to-remove.txt`)
    rm $i
    end

Аналогично можно удалить файлы, отобранные командой grep:

rm `ls | grep 123`

Рубрики:HOW-TO, Unix and Linux
  1. Май 15, 2008 в 11:17 дп

    Команда rm `ls | grep 123` не всегда сможет справиться со своей задачей. Она не сможет обработать файлы с пробелами в названии. Скажем, файл вида «123 321» она найдет, но воспримет 123 и 321 как 2 разных названия и попытается удалить их вместо того, что нужно. Поэтому в таких случаях я пользуюсь командой

    ls -1 | while read i; do rm «$i»; done

  2. Май 15, 2008 в 11:21 дп

    тьфу. Я, конечно же, имел в виду
    ls -1 | grep 123 | while read i; do rm «$i»; done

  1. No trackbacks yet.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: