найдите, что grep-E дает ошибку: найдите: неизвестный предикат '-e'

Я выполняю команду (на Ubuntu 18.04)

find . \| grep -E "(\_\_pycache__\|\.pyc\|\.pyo$)" \| xargs rm -rf

и я получаю ошибку

find: unknown predicate '-E'

Я раньше выполнял эту команду на предыдущих установках без проблемы.

1
задан 19 April 2020 в 13:32

2 ответа

Я раньше выполнял эту команду на предыдущих установках без проблемы

Я не знаю, как это возможно, потому что это - абсолютно неправильный синтаксис - необходимо ли использовать |, нет \| , и также нет никакой потребности использовать grep и rm отдельно. Это должно быть:

find . \( -name "*__pycache__" -o -name "*.pyc" -o -name "*.pyo" \) -delete
2
ответ дан 25 April 2020 в 10:45

Удалите файлы с помощью extglob и globstar:

$ rm -i **/@(__pycache__|*.pyc|*.pyo)
0
ответ дан 25 April 2020 в 10:45

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

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