$PWD в приглашении Bash
Довольно удобно иметь в приглашении Bash полный путь до текущей директории. Но порой этот путь становится настолько длинным, что просто забивает собой всю ширину окна терминала.. Вот способ победить это неудобство
Добавьте этот код в ваш ~/.bashrc
function truncate_pwd
{
if [ $HOME == $PWD ]
then
newPWD=”~”
elif [ $HOME == ${PWD:0:${#HOME}} ]
then
newPWD=”~${PWD:${#HOME}}”
else
newPWD=$PWD
filocal pwdmaxlen=15
if [ ${#newPWD} -gt $pwdmaxlen ]
then
local pwdoffset=$(( ${#newPWD} - $pwdmaxlen ))
newPWD=”.+${newPWD:$pwdoffset:$pwdmaxlen}”
fi
}PROMPT_COMMAND=truncate_pwd
PS1=”${ttyname}@\[${HOST_COLOUR}\]\h\[${RESET_COLOR}\]:\${newPWD}\\$ “
4.02.08 | *NIX |


Можно еще так, скажем
export PS1=”\W\$ ”
Будет показывать только имя текущей директории, без пути.
Очепятка:
не newPWD=”.+${newPWD:$pwdoffset:$pwdmaxlen}”, а
newPWD=”.”+”${newPWD:$pwdoffset:$pwdmaxlen}”
Вотъ.
работающая в rhel5 и centos5 версия:
function truncate_pwd
{
if [ $HOME == $PWD ]
then
newPWD=”~”
elif [ $HOME == ${PWD:0:${#HOME}} ]
then
newPWD=”~${PWD:${#HOME}}”
else
newPWD=$PWD
fi
local pwdmaxlen=15
if [ ${#newPWD} -gt $pwdmaxlen ]
then
local pwdoffset=$(( ${#newPWD} - $pwdmaxlen ))
newPWD=..${newPWD:$pwdoffset:$pwdmaxlen}
fi
}
PROMPT_COMMAND=truncate_pwd
PS1=\[\${newPWD}\]\\$\