Можно обойтись простой командой:
rm -rf $(ls -d */ | grep -v SAVETHISDIRECTORY)
Здесь список директорий передается как параметр команды rm с помощью блока $(). Параметр -d у ls необходим для вывода лишь каталогов.
Еще один вариант
find -maxdepth 1 -mindepth 1 -type d ! -name 'SAVETHISDIRECTORY' -exec rm -rf {} \;
В этом случае используется вызов команды rm -rf для всех найденных директорий в текущем каталоге, исключая указанную.
Параметры maxdepth 1 и mindepth 1 нужны для того, чтобы не удалялись вложенные директории внутри SAVETHISDIRECTORY, а также чтобы не производилось попытки удалить текущий каталог (".").
-type d необходим для поиска только директорий.
Самая важная часть здесь - это ! -name 'SAVETHISDIRECTORY'. Она указывает find на то, что необходимо пропустить ("!") все элементы, имя которых ("-name") соответствует шаблону SAVETHISDIRECTORY.
Ну и -exec rm -rf {} \; удаляет все найденные find каталоги.