Не забывайте о pushd
и popd
, если только вы никогда их не используете.Я бы сделал это:
PS1='(\w) \$ '
chdir() {
local action="$1"; shift
case "$action" in
# popd needs special care not to pass empty string instead of no args
popd) [[ $# -eq 0 ]] && builtin popd || builtin popd "$*" ;;
cd|pushd) builtin $action "$*" ;;
*) return ;;
esac
# now do stuff in the new pwd
echo Your last 3 modified files:
ls -t | head -n 3
}
alias cd='chdir cd'
alias pushd='chdir pushd'
alias popd='chdir popd'