Не уверен, что это возможно, но я помню, что с давних времен, используя AIX, можно было изменить мой путь, просто сказав, какую часть пути необходимо заменить чем-то другим. Например, скажем, у меня есть два пути:
/etc/application-2.0.1/options/default
и
/etc/application-1.0.8/options/default
что я мог бы переключиться из папки 1 в 2, используя такую команду, как
кд /2.0.1/1.0.8/
который заменит в пути строку 2.0.1
для 1.0.8
. Очевидно, это не работает для меня сейчас. Но есть ли способ сделать это?
sudo apt-get install zsh
Это должно работать в Баш на Ubuntu 10.04:
cd ${PWD/old/new}
. В основном это заменяет первое вхождениеold
в вашем текущем рабочем каталоге наnew
. 2 примера ниже.Пример 1
Пример 2
Занимая идею sepp2k выше, вы можете сделать такую функцию
а затем использовать что-то вроде
mycd 2.0.1 1.0.8
переключения.источник
Я использовал (и пропустил) эту функцию сам. Это зависит от того, какой вкус и / или выпуск * nix вы используете. Если вы используете bash, вот удобный способ расширить встроенный компакт-диск, чтобы включить эту функцию. Поместите это в ваш .bashrc (или для проверки вставьте его в оболочку bash и нажмите Enter).
источник
Вы, наверное, помните историю расширения. Я не знаю, что было доступно в вашей оболочке в AIX, но один из способов сделать это в bash - это
^2.0.1^1.0.8
.Расширение истории менее полезно с такими оболочками, как bash и zsh, которые имеют мощное редактирование командной строки. Вы можете использовать клавиши со стрелками, чтобы вызвать предыдущие команды, и Alt+, .чтобы вставить последнее слово предыдущей команды (дважды нажмите ее, чтобы получить команду до этого и т. Д.).
источник
histverify
опцияshopt
включена.--norc
при тестировании.Если вы фанат vi, вы можете включить режим vi в вашей оболочке (например, bash set -o vi) и использовать командный режим vi ...
Или вы можете сделать сумасшедшее расширение истории (протестировано в zsh, возможно, и в bash):
источник
Однако это не очень красиво. Вы можете немного подправить его, поместив в функцию:
И затем называя это как:
Вы все еще должны избежать точек, хотя, но я уверен, что это можно обойти также с небольшим количеством мысли.
источник
Вышеприведенная команда поменяет 2.0.1 на 1.0.8 в последней команде, ее работа в bash
источник
Для обеспечения
-P|-L|-
работы используйте следующее:источник
Не уверен насчет AIX, но я помню это как старый трюк оболочки Korn на блоках Solaris, которые я использовал для администрирования. В вашем примере вы должны ввести команду:
Еще немного информации здесь .
источник