This simple recursive bash function replaces cd ..
. 1 works like cd ..
. 2 works like cd ../../ and so on.
. works like . 1.
.() { , ${1:-1}; };
,() { local N=$(($1-1)) C=${1/#0*/cd} D=${1/#[1-9*]/../}; ${C/#[1-9]*/,} ${N/-1/} ${2}${D/#0*/} ;}