Tip #769 .. revisited
Tip 550 gives a script for a '..' command which will go up n directory levels, however the version there messes up your previous directory so "cd -" will not work. The version below fixes this problem:.. v1.1
Usage .. [n]
Go up n-levels.
i.e.: .. 3 will go up 3 levels
function .. (){ local arg=${1:-1}; local dir="" while [ $arg -gt 0 ]; do dir="../$dir" arg=$(($arg - 1)); done cd $dir >&/dev/null }
Another possible task is to go up several levels until we find the directory we need. The function below will do this:
... v0.1
Usage ... Thing/Some
Go up until you encounter Thing/Some, then go there
i.e.: I'm in /usr/share/X11
... src will go up to /usr, then change to /usr/src
function ... (){ if [ -z "$1" ]; then return fi local maxlvl=16 local dir=$1 while [ $maxlvl -gt 0 ]; do dir="../$dir" maxlvl=$(($maxlvl - 1)); if [ -d "$dir" ]; then cd $dir >&/dev/null fi done }
alias aptitude at awk bash bc cal cat cd colrm comm cp csh curl cut date dd df dialog diff dirname dpkg du fc find fuser grep gs gzip history iconv kill ksh last less ln ls lsof lynx m4 md5sum mkdir mkfifo mkisofs mv mysql nc netstat openssl OSX perl ping popd ps pushd python read redirection rm scp screen sed sort ssh stat sudo svn tail tar tee test top tr uniq vim wc wget xargs