[bash] : créer une fonction pour monter de 1 ou plusieurs niveaux dans une arborescence

Pour gagner du temps l’idéal est de personnaliser votre .bashrc en y créant des alias. Mais pour aller encore un peu plus loin vous pouvez y ajouter des fonctions cela permet d’aller un peu plus loin que les alias.

Par exemple, je vous propose une fonction qui vous permettra de remonter facilement dans une arborescence. Vous pouvez la nommer comme vous voulez prenons par exemple up.

up() { if [ "${1/[^0-9]/}" == "$1" ]; 
then p=./; for i in $(seq 1 $1); 
do p=${p}../; done; cd $p; 
else echo 'usage: up N'; fi }
export -f up

Cete fonction peut-être lancée soit en tapant un simple « up » dans ce cas vous remontez d’un niveau (1 directory) ou « up 3 » pour remonter de 3 niveaux directement. Très efficace.

Donc plus expliciter un peu cette ligne de code :

  • avec le if on vérifie si on a un argument ou pas
  • si on a un arguement on fait une séquence sui va permettre de répéter « ../ »
  • sinon on remonte d’un niveau seulement
  • on oublie pas d’exporter cette fonction pour qu’elle soit utilisable
  • et surtout après ajout on source .bashrc

 

Un commentaire sur “[bash] : créer une fonction pour monter de 1 ou plusieurs niveaux dans une arborescence

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s