Есть ли ярлык для cd ..
?
9 ответов
Активируйте опцию autocd
. Это позволит вам ввести ..
для cd ..
и будет на самом деле позволит вам использовать любой каталог в качестве имени команды и воли cd
к нему:
shopt -s autocd
Для любопытных то же самое существует для zsh:
setopt auto_cd
Не по умолчанию (там могут быть некоторые исключения), нет. Но если вы используете команду alias
вы можете создать ярлык следующим образом:
alias ..="cd .."
Это позволит вам использовать команду ..
сделать cd ..
Я считаю это полезным:
up() { local p= i=${1:-1}; while (( i-- )); do p+=../; done; cd "$p$2" && pwd; }
Например, up 4
= cd ../../../..
В качестве бонуса `up 4`/path/to/file
работает аналогично ../../../../path/to/file
.
После выполнения
bind '"\eu":"cd ..\C-m"'
Вы можете cd ..
нажав Alt-u
. Я использовал это на чемпионатах chdir ;-)
Если вы хотите весь набор swift-chdir
ALT+u cd ..
ALT+n enter next dir for selection
ALT+p enter previous dir for selection
ALT+SPC choose selected dir
ALT+l list subdirectories and highlight selection
просто включите это в ваш .bashrc
swiftcd-status() {
echo -n -e "\r\0033[1A\0033[J"
}
swiftcd-contents() {
find "$swiftcdpath" -maxdepth 1 -executable -type d
}
swiftcd-setdir ()
{
swiftcdpath=$PWD
swiftcddirnum=1
swiftcddircount=`swiftcd-contents|wc -l`;
swiftcd-status
}
swiftcd-pd ()
{
(( --swiftcddirnum <= 0 )) && swiftcddirnum=$swiftcddircount;
swiftcd-switch $swiftcddirnum
swiftcd-status
}
swiftcd-updir ()
{
cd ..;
swiftcd-setdir
}
swiftcd-list ()
{
local redOn="$(echo -e '\0033[31m\0033[1m')"
local redOff="$(echo -e '\0033[m')"
swiftcd-status
(( swiftcddircount > 1 )) && {
echo
echo $(swiftcd-contents|sed 's!^'"$swiftcdpath"'!!'|sed $swiftcddirnum' s/\(.*\)/'"$redOn"'\1'"$redOff"'/')
}
}
swiftcd-nd ()
{
(( ++swiftcddirnum > swiftcddircount )) && swiftcddirnum=1;
swiftcd-switch $swiftcddirnum
swiftcd-status
}
swiftcd-switch() {
(( $1 <= swiftcddircount && $1 > 0 )) && cd $(swiftcd-contents|sed -n $1' p')
}
bind '"\e ":"swiftcd-setdir\C-m"'
bind '"\ep":"swiftcd-pd\C-m"'
bind '"\eu":"swiftcd-updir\C-m"'
bind '"\en":"swiftcd-nd\C-m"'
bind '"\el":"swiftcd-list\C-m"'
swiftcd-setdir
Я использую этот, потому что я печатаю слишком быстро и часто пропускаю пробел:
alias cd..="cd .."
Попробуйте autojump: autojump на github
Это не только сократит команду cd до 'j', но также сократит символы, необходимые для ввода папки, в которую вы хотите перейти.
Если вы всегда заходите в папку /home /foo /Projects / thenefacefacebook, вы можете просто сделать «j face», и вот вы здесь. Он автоматически узнает, какие папки являются наиболее важными для вас, и после использования его в течение месяца я могу сказать, что он очень точный.
Я использую alias …='cd ..'
в моем файле .bashrc
. Юникод правила;)
Попробуйте Cd Deluxe для значительно улучшенной команды CD. Он поддерживает такие вещи, как «CD ...» и «CD ....» и так далее, чтобы быстро перемещаться вверх.
Мой файл bashrc содержит
alias ..="cd .. && ls -lG"
так же как
alias ,,="pushd .. && ls -lG"