Как удалить файлы на командной строке с регулярными выражениями?

Позволяет говорят, что у меня есть 20 файлов под названием FOOXX, где XX количество файла, например, 01, 02 и т.д.

В данный момент, если я хочу удалить все файлы ниже, чем номер 10, это легко, и я просто использую подстановочный знак, например, комнату FOO0*

Однако, если я хочу удалить определенные файлы диапазон INA, например, 13-15, это становится более трудным.

комната FPP [13-15] не работает и спрашивает меня, если я хочу удалить все файлы. Комната FOO1 [3-5] Likewse хочет удалить все файлы, которые начинаются с FOO1

Так, что лучший способ состоит в том, чтобы удалить диапазоны файлов как это?

Я попробовал и ударом и zsh, и я не думаю, что они отличаются так для такой основной задачи?

18
задан 06.05.2010, 15:00

2 ответа

В ударе можно использовать:

rm FOO1{3..5}

или

rm FOO1{3,4,5}

удалить FOO13, FOO14 и FOO15.

Фигурная скобка расширений Bash документируется здесь.

31
ответ дан 07.12.2019, 10:23

ls | grep regex | xargs комната

6
ответ дан 07.12.2019, 10:23

Теги

Похожие вопросы