Переход в предыдущую папку при запуске MINGW
Как можно сделать, чтобы терминал MINGW запоминал последнюю рабочую директорию и при следующем запуске переходил в неё вместо ~
?
Источник: Stack Overflow на русском
Как можно сделать, чтобы терминал MINGW запоминал последнюю рабочую директорию и при следующем запуске переходил в неё вместо ~
?
Если shell'ом для MinGW является bash
, как оно обычно и есть по умолчанию, то в .bashrc
в домашнем каталоге пользователя прописываются стандартные для включения такого поведения команды (для любого UNIX будет работать, и в MinGW у меня работает):
# Save last directory whenever the EXIT signal is received
trap 'pwd > ~/.last_dir' EXIT
# Change to the last saved directory on login
if [ -f ~/.last_dir ]; then
cd "$(cat ~/.last_dir)" || cd ~
fi
Команда trap
устанавливает команду, которая выполняется, когда процесс bash
получает сигнал EXIT
, а всё остальное вроде должно быть очевидно. Если в домашней директории существует файл .last_dir
, пытаемся перейти в директорию, которая в нём записана, а если это не получилось (например, если эта директория была удалена), переходим в домашнюю.