Как я могу удалить все файлы, которые не начинаются с "2012" в определенной папке?
Это на OS X Lion.
Используйте find
чтобы выбрать все файлы (type f
), которые не (!
) начать с 2012 года ("2012*"
). Затем вы rm
(удалить) их сразу же, или пусть переключатель delete
сделать это для вас.
find . -type f ! -name "2012*"
Обратите внимание, что это рекурсивно спускается в подкаталоги. Если вы хотите быть уверены, что не удаляете вещи, которые действительно хотите сохранить, убедитесь, что используете правильные опции (так что обратитесь к man find
за дополнительной информацией).
Например, -maxdepth 1
не пойдет в подкаталоги.
Теперь удалите эти файлы:
find . -type f ! -name "2012*" -delete