function projectcd() {
arg=""
if [[ ! -z $arg ]] ; then
cd $arg
elif [[ $(pwd) == /home/user/project/root/* ]] ; then
cd /home/user/project/root/
else
cd
fi
}
alias cd=projectcd
Especificamente, estou me perguntando se, ao trabalhar em um projeto, se eu fizer cd
, ele pode me levar à raiz do projeto e, se estiver em outro lugar, obtenho o comportamento padrão.
function projectcd() {
arg=""
if [[ ! -z $arg ]] ; then
cd $arg
elif [[ $(pwd) == /home/user/project/root/* ]] ; then
cd /home/user/project/root/
else
cd
fi
}
alias cd=projectcd
Use CDPATH
para definir o diretório base para o comando cd
[ramesh@dev-db ~]# pwd
/home/ramesh
[ramesh@dev-db ~]# cd mail
-bash: cd: mail: No such file or directory
[Note: This is looking for mail directory under current directory]
[ramesh@dev-db ~]# export CDPATH=/etc
[ramesh@dev-db ~]# cd mail
[Note: This is looking for mail under /etc and not under current directory]
[ramesh@dev-db /etc/mail]# pwd
/etc/mail
Tags command-line