У меня есть хороший маленький псевдоним bash в моей папке .bashrc, который позволяет мне запускать Tomcat без предварительной записи в папку, например,
alias startTomcat="cd ~/apache-tomcat-7.0.34/bin/ && ./startup.sh"
Однако, когда я запускаю startTomcat
в терминале, я загружаюсь из папки, в которой начал, и теперь мой терминал находится в ~/apache-tomcat-7.0.34/bin/
. Конечно, это ожидаемое поведение, но я хотел бы запустить команду, не переходя в другую папку.
Могу ли я сохранить исходное местоположение, а затем вернуться к нему в моем файле .bashrc или, альтернативно, запустить startup.sh без cd
выхода из исходной папки [ 119]?
Спасибо !!
Вы можете использовать абсолютный путь для startup.sh
без указания cd
в папке, где находится ::
alias startTomcat="~/apache-tomcat-7.0.34/bin/startup.sh"
Или вы можете использовать cd -
, который вернет вас в каталог где вы были в последний раз:
alias startTomcat="cd ~/apache-tomcat-7.0.34/bin/ && ./startup.sh && cd -"
Ответ Раду хороший, но в зависимости от варианта использования вы можете использовать pushd
и popd
, что позволяет сохранять и восстанавливать каталоги. Что-то вроде: alias startTomcat="pushd ~/apache-tomcat-7.0.34/bin; ./startup.sh; popd"