Earlier quoted context omitted.
I do the same in bash, but it's a bit wordier: _chpwd_hook() { if [[ "$PWD" != "$PREVPWD" ]]; then ls PREVPWD="$PWD" fi } PROMPT_COMMAND=(_chpwd_hook) Goes well with shopt -s autocd alias r='cd -'
Not strictly equivalent, but shorter (and should work with multiple shells): $ cd() { builtin cd $* && ls; } $ cd / bin boot cdrom dev etc home lib lib64 [...]
cd() { builtin cd "$@" && ls; }