Удалить все файлы .class из папок в bash [дубликат]

По прошествии нескольких лет после того, как был задан этот вопрос, ни одна из перечисленных выше файловых систем управления версиями, насколько я могу судить, активно не разрабатывается и не поддерживается (с удовольствием поправлю, если ошибаюсь). Статус-кво, по-видимому, заключается в резервном копировании на сервере / в облаке и сохранении версий в серверном приложении. Я думаю, что для моих проблем с резервным копированием это имеет смысл: оно объединяет проблемы удаленного резервного копирования, управления версиями и больших затрат на хранение в одном решении. Просто больше не имеет смысла иметь несколько версий каждого документа, к которому вы прикоснулись, занимая место в вашей собственной файловой системе.

Для небольших нагрузок (небольшие файлы) работает Github с запланированными фиксациями или автоматической фиксацией.

Для больших задач github услужливо указывает

Git не предназначен для использования в качестве инструмента резервного копирования. Тем не менее, существует множество решений, специально разработанных для резервного копирования, которые стоит попробовать, включая Arq, Carbonite, Mozy и CrashPlan.

Пока я пишу это, из рекомендованных CrashPlan и Mozy есть приложения для Linux. Оба поддерживают управление версиями, но перед покупкой проверьте ограничения по времени.

0
20.03.2017, 21:32
2 ответа

Это не работает, потому что путь не начинается с src, он начинается с ./src.

Ваша командная строка может быть исправлена следующим образом:

find . -type f -path "./src/*/*" -name "*.class" -exec rm -f {} \;

Альтернативный вариант,

find . -type f -path "./src/*/*" -name "*.class" -delete

если вас устраивает удаление всех *.class файлов в любом месте под src (не только в подкаталогах):

find src -type f -name "*.class" -delete
4
28.01.2020, 02:19
cd ./project/src && \
find . -name '*.class' -exec rm -f {} \;

Не нужно усложнять простые вещи.

0
28.01.2020, 02:19

Теги

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