Да, я просто написал это в спешке;) Редактирование сейчас.
Как это сделать ?:alias cmd5 = "cd ../../../../../"
ypercubeᵀᴹ
Ну, я полагаю, я мог бы выписать их от 1 до 10 или около того, но было бы неплохо иметь умный способ сделать это. Это не совсем подходит мне. Сделаем это, если не найдется другого решения.
Ответы:
16
Поместите это в свой ~/.bashrc:
cdup(){
levels=${1-1}while((levels--));do
cd ..done}
(Название cdupпроисходит от соответствующей команды FTP, только к вашему сведению.)
Спасибо за ответ, согласился с ответом jleedev, потому что он был на 1 строчку короче, и я не мог определиться с выбором! Спасибо, в любом случае!
@Muu: Оба ответа будут работать, но мой будет работать для многих, многих уровней, а @ jleedev's будет работать только для небольшой группы (независимо от того, какой предел стека). ;-) (Я уверен, что вы никогда не достигнете предела в любом случае, но мой более общий, вот к чему я стремлюсь. :-))
Крис Джестер-Янг
Честно говоря, я наградил вас ответом тогда. Извините, jleedev - хотя, скорее всего, я продолжу использовать ваше решение, так как забуду его поменять :)
11
Меня учили использовать «pushd» и «popd» для таких обстоятельств.
Например, введите «pushd». а затем «CD / Home». Теперь введите «popd», и вы вернетесь туда, откуда начали.
«pushd» / «popd» - это стек, вы можете помещать туда столько каталогов, сколько захотите, но он включается в последнюю очередь, сначала при запуске popd.
Возможно, вы захотите изучить использование pushdи popdустановку маркеров местоположения и легко вернуться туда из любого каталога, в который вы изменили.
Вы также можете установить переменную с именем каталога, который вы часто используете, затем CD там:
MYPROJ=~/projects/name/src
cd $MYPROJ
proj1='cd $MYPROJ'
cd -
вернуться к последнему каталогу, в котором вы были. Я использую это все время, чтобы перейти из глубины моего дерева кода обратно в его корень ... хотя это работает, только если вы перешли в него в одном сдача.
cdd old new
это была функция скрипта, которую я написал в прошлом, которую я использовал для перемещения между похожими деревьями. По сути, он взял два аргумента и сделал регулярное выражение на вашем пути, отлично подходит для перемещения между ветвями и тому подобным. Например, если вы были в ~ / bzr / web / trunk / path / to / feature и вам нужно было перейти в ~ / bzr / web / feature-branch / path / to / feature, тогда вы бы это сделали cdd trunk feature-branch. Реализация, которую я имел, была на архаичном языке оболочки в AIX, но она была довольно тривиальной, поэтому ее легко реализовать в выбранной оболочке, если вам это нужно. Для нас это было очень полезно, потому что структура выглядела следующим образом: ... / {product} / {version} / {release} / {src, bld, dbg, pkg, tst} / {component} / ... так перемещается в этом дереве стало безумно довольно быстро.
ls
? Конечно, вы имеете в видуcd
?alias cmd5 = "cd ../../../../../"
Ответы:
Поместите это в свой
~/.bashrc
:(Название
cdup
происходит от соответствующей команды FTP, только к вашему сведению.)источник
Меня учили использовать «pushd» и «popd» для таких обстоятельств.
Например, введите «pushd». а затем «CD / Home». Теперь введите «popd», и вы вернетесь туда, откуда начали.
«pushd» / «popd» - это стек, вы можете помещать туда столько каталогов, сколько захотите, но он включается в последнюю очередь, сначала при запуске popd.
источник
Конечно, почему бы и нет
источник
up 500
. :-)Быстро и грязно:
Сформулировано, чтобы изменить каталог только один раз.
источник
Вот альтернативный способ:
источник
Возможно, вы захотите изучить использование
pushd
иpopd
установку маркеров местоположения и легко вернуться туда из любого каталога, в который вы изменили.Вы также можете установить переменную с именем каталога, который вы часто используете, затем CD там:
источник
Я использую autojump, который позволяет мне печатать:
он может учиться на ваших привычках и очень легкий (и вызывающий привыкание;))
источник
Постройте путь, используя
printf
затемcd
к нему:Использовать как:
источник
Две мысли, которые могут быть вам полезны:
cd -
вернуться к последнему каталогу, в котором вы были. Я использую это все время, чтобы перейти из глубины моего дерева кода обратно в его корень ... хотя это работает, только если вы перешли в него в одном сдача.
cdd old new
это была функция скрипта, которую я написал в прошлом, которую я использовал для перемещения между похожими деревьями. По сути, он взял два аргумента и сделал регулярное выражение на вашем пути, отлично подходит для перемещения между ветвями и тому подобным. Например, если вы были в ~ / bzr / web / trunk / path / to / feature и вам нужно было перейти в ~ / bzr / web / feature-branch / path / to / feature, тогда вы бы это сделали
cdd trunk feature-branch
. Реализация, которую я имел, была на архаичном языке оболочки в AIX, но она была довольно тривиальной, поэтому ее легко реализовать в выбранной оболочке, если вам это нужно. Для нас это было очень полезно, потому что структура выглядела следующим образом: ... / {product} / {version} / {release} / {src, bld, dbg, pkg, tst} / {component} / ... так перемещается в этом дереве стало безумно довольно быстро.источник