J'ai un joli petit alias bash dans mon dossier .bashrc qui me permet de lancer Tomcat sans avoir à commencer par le cd, par ex.
alias startTomcat="cd ~/Apache-Tomcat-7.0.34/bin/ && ./startup.sh"
Cependant, lorsque je lance startTomcat
dans un terminal, je suis démarré à partir du dossier dans lequel j'ai démarré et mon terminal réside maintenant dans ~/Apache-Tomcat-7.0.34/bin/
. C'est le comportement attendu, bien sûr, mais ce que je voudrais faire est d'exécuter la commande sans se retrouver dans un autre dossier.
Puis-je soit enregistrer l'emplacement d'origine, puis y revenir dans mon fichier .bashrc, ou bien exécuter startup.sh sans que cd
ne sorte du dossier d'origine?
Merci!!
Vous pouvez utiliser le chemin absolu pour startup.sh
sans to cd
dans le dossier où se trouve ::
alias startTomcat="~/Apache-Tomcat-7.0.34/bin/startup.sh"
Ou, vous pouvez utiliser cd -
qui vous ramènera au répertoire où vous étiez la dernière fois:
alias startTomcat="cd ~/Apache-Tomcat-7.0.34/bin/ && ./startup.sh && cd -"
La réponse de Radu est bonne, mais selon le cas d'utilisation, vous souhaiterez peut-être utiliser pushd
et popd
, ce qui vous permettra de sauvegarder et de restaurer des répertoires. Quelque chose comme: alias startTomcat="pushd ~/Apache-Tomcat-7.0.34/bin; ./startup.sh; popd"