bash, la fonction qui tue...
2013-12-07
Voici une fonction qui tue… et simplifie la vie en ligne de commandes !
function ..() {
## .. <nombre> remonte de <nombre> repertoires
## .. /<chaine> remonte jusqu'a ce qu'un repertoire contient <chaine> dans son nom
local level=$1
if [[ ! "$level" =~ / ]]; then
while [ $level -gt 0 ]; do
cd .. || break
level=$(($level-1))
done
else
level=${level:1}
local curdir=$(pwd)
IFS='/' read -ra ADDR <<< "$curdir"
for (( i = ${#ADDR[@]}-1; i>0; i-- )); do
if [[ "${ADDR[$i]}" =~ "$level" ]]; then
break
fi
cd ..
done
fi
}
Les commentaires parlent d’eux-mêmes pour dire ce que fait la fonction ..
A vos .bashrc !!!