Я постоянно иду 'CD../../../.. /'. Существует ли команда/псевдоним, которая могла позволить мне пойти 'cmd 4', и я был бы забран 4 каталога?
Вставьте это Ваш ~/.bashrc
:
cdup() {
levels=${1-1}
while ((levels--)); do
cd ..
done
}
(Имя cdup
прибывает из соответствующей команды FTP, просто к вашему сведению.)
Мне преподавали использовать 'pushd' и 'popd' для таких обстоятельств.
Например, введите 'pushd'. и затем 'CD / домой'. Теперь введите 'popd', и Вы вернетесь туда, где Вы запустили.
'pushd'/'popd' является стеком, можно продвинуть как много каталогов на там как Вам угодно, но это является последним на, прежде всего когда Вы popd.
Быстрый и грязный:
cmd () { dir=.; for i in $(seq 1 $1); do dir=$dir/..; done; pushd $dir; }
Сформулированный, чтобы только изменить каталог однажды.
Вы могли бы хотеть изучить использование pushd
и popd
чтобы установить маркеры местоположения и и возвратиться туда легко из любого каталога, Вы изменились на.
Вы могли также установить переменную с названием каталога, Вы используете много, затем CD там:
MYPROJ=~/projects/name/src
cd $MYPROJ
proj1='cd $MYPROJ'
Я использую автопереход, которые позволяют мне вводить:
j h
>> /home/cjulien
j et
>> /etc
это может извлечь уроки из Ваших привычек и очень легко (и захватывающе ;))
Две мысли, которые могли бы быть полезны для Вас:
CD -
возвратитесь к последнему каталогу, в котором Вы были. Я использую это все время для получения от в глубине души в моем дереве кода назад к корню его..., хотя это только работает если Вы cd'd вниз в него в одном изменении.
cdd, старый новый
это было функцией сценария, я записал в прошлом, что использовал для того, чтобы переместиться между подобными деревьями. В основном это взяло два аргумента и сделало regexp на Вашем пути, большом для того, чтобы переместиться между ответвлениями и таким. Например, если бы Вы были в ~/bzr/web/trunk/path/to/feature и должны были добраться до ~/bzr/web/feature-branch/path/to/feature затем, то Вы сделали бы cdd trunk feature-branch
. Реализация, которую я имел, была на архаичном языке оболочки на AIX, но это было довольно тривиально, так должно быть легко реализовать в предпочтительной оболочке, если Вам нужен он. Для нас это было очень полезно, потому что структура была похожа:.../{продукт} / {версия} / {выпуск} / {src, строение, dbg, pkg, tst} / {компонент}/... настолько перемещающийся в том дереве стал безумным довольно быстрый.