Вот пример. Создание пользовательского меню
Вы просто следуете этим инструкциям и переименовываете разделы в X / Lubuntu.
Я думаю, что это связано с тем, как вы запускаете скрипт.
Если вы это сделаете:
sh ./script.sh
Или
./script.sh
Тогда это вызывает новую оболочку, запускает скрипт, а затем возвращает вас к текущему. Итак, cd выполняется в новой оболочке, а ваш текущий нетронутый.
Попробуйте это вместо:
. ./script.sh
Что запустит script.sh в вашей текущей оболочке, а вы «Я буду держать результаты после завершения.
Функция будет более подходящей для такой команды. Например,
back() {
if [[ $PWD = *database ]]; then
cd ../../
fi
}
Поместите его в ~ / .bashrc, чтобы эта новая команда back была доступна в новых интерактивных сессиях bash.