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

Print Friendly, PDF & Email

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

 

Découvrez  [Tips][Python] : mettre à jour automatiquement tous les packages

1 réflexion sur « [bash] : créer une fonction pour monter de 1 ou plusieurs niveaux dans une arborescence »

  1. Ping : Top commandes linux #7 : git, bgplot, pacvim, loop/useradd, ln -s à la volée – Xavki

Laisser un commentaire