Когда мне часто приходится переходить в такой каталог:
cd an/extremely/long/path/in/which/I/have/some/kinda/project
Я бы просто сделал это один раз:
ln -s an/extremely/long/path/in/which/I/have/some/kinda/project ~/project
И с этого момента используйте :
cd ~/pr[tab]
Когда дело доходит до:
./runmyproject --with some --command line --options set
Я бы использовал поиск истории bash. В командной строке просто нажмите Ctrl-R и введите «runmy». Voila, вся команда со всеми параметрами, поскольку она была последней введенной, находится прямо там, чтобы ее снова ввести. Если мне не нравятся параметры, которые я использовал в последний раз, и мне хотелось посмотреть на более ранние команды, я бы продолжал нажимать Ctrl-R, чтобы перебирать все предыдущие команды, содержащие «runmy».
Поиск истории Ctrl-R может помочь с помощью команды «cd», если вам не нравится идея symlink. [Ctrl-R] / proj действительно может вернуть последнюю команду, которую вы использовали для cd, в этот каталог.
Вместо добавления псевдонима или переключения на специальную оболочку, я всегда предпочитаю использовать функции bash, предназначенные для помощи в подобных вещах. Таким образом, я могу использовать те же функции на удаленных компьютерах, или если мне нужно сесть на терминал коллеги.