В частности, мне интересно, если во время работы над проектом, если я это сделаю cd
, это может привести меня к корню проекта, и если я где-нибудь еще, то получу поведение по умолчанию.
function projectcd() {
arg="$1"
if [[ ! -z $arg ]] ; then
cd $arg
elif [[ $(pwd) == /home/user/project/root/* ]] ; then
cd /home/user/project/root/
else
cd
fi
}
alias cd=projectcd
Используйте CDPATH
, чтобы определить базовый каталог для команды 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
.