for dir in $(find -type d ! -name CVS); do for file in $(find $dir -maxdepth 1 -type f); do rm $file; cvs delete $file; done; done


Эта команда рекурсивно удаляет все файлы в каталоге CVS. Она выполняет следующие действия:

1. Поиск всех подкаталогов, исключая CVS: find -type d ! -name CVS
2. Для каждого найденного каталога выполняется вложенный цикл:
— Поиск всех файлов в данном каталоге: find $dir -maxdepth 1 -type f
— Удаление каждого найденного файла: rm $file
— Выполнение команды CVS для удаления файла из системы управления версиями: cvs delete $file

Альтернативы: Можно также использовать команду find с опцией -exec для выполнения действий над файлами, что сократит количество команд в скрипте.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *