Forum Astuces.divers [Terminal] Bookmarker des répertoires avec CDargs

Posté par  .
Étiquettes : aucune
0
26
sept.
2005
CDargs est un petit programme qui rendra plus rapide votre navigation en ligne de commande dans "/des/paths/qui/sont/vraiment/longs". Il permet de bookmarker de tels dossiers pour s'y rendre plus rapidement.

Vous pouvez télécharger ici CDargs, si il n'est pas déjà packagé pour votre distribution :
http://www.skamphausen.de/software/cdargs/

Après une installation plutôt classique, vous devrez charger les fonctions de CDargs dans votre environnement, via votre ~/.bashrc :
[ -f /usr/share/cdargs/cdargs-bash.sh ] && \
source /usr/share/cdargs/cdargs-bash.sh

Dès lors, vous pouvez commencer à créer vos bookmarks. Imaginons que vous êtes dans le "/dossier/qui/a/un/path/vraiment/long", faites :
% ca toto
pour créer un bookmark du nom de "toto", ou plus simplement, pour créer un bookmark au nom de "long" :
% ca

Une fois le bookmark créé, il vous suffira de faire :
% cdargs toto
pour vous rendre dans le dossier en question, et remplacer ainsi le fastidieux :
% cd /dossier/qui/a/un/path/vraiment/long

Je vous laisse consulter pour plus de détails cet article par lequel j'ai découvert ce programme :
http://www.linux.com/article.pl?sid=05/09/14/2135236
  • # errata

    Posté par  . Évalué à 2.

    Faut décidement croire que je suis pas encore mûr pour une astuce sans boulette...

    > Une fois le bookmark créé, il vous suffira de faire :
    > % cdargs toto
    > pour vous rendre dans le dossier en question

    Il faut lire "% cv toto". Quant à la commande "cdargs", elle offre elle une éspèce de navigateur qui permet de se balader dans les répertoires et de créer des bookmarks, mais en fait perso je l'ai pas trouvée super utile. Enfin disons qu'avec "ca" pour faire un bookmark et "cv" pour y aller, et bien je suis content et je n'ai pas cherché beaucoup plus loin...
    • [^] # Heu.....

      Posté par  . Évalué à 1.

      > export toto=/dossier/qui/a/un/path/vraiment/long
      > cd $toto


      Si c'est juste pour économiser un '$' ....
      • [^] # Re: Heu.....

        Posté par  . Évalué à 2.

        Ça, plus avoir une completion propre (avec ta soluce Bash propose 36000 noms de variables qui ne sont pas des bookmarks). Bref, c'est plus l'équivalent de ce qui est décrit en dessous Vincent A. pour ZSH.

        Oh, et puis ne pas interférer avec son environement, c'est bien aussi : je viens de vérifier, et j'ai un bookmark qui s'appelle "pkg", or je ne compte plus les fois où sur ma ligne de commande ça m'a servi de nom de variable dans des oneliners.

        Et puis pour créer les bookmarks c'est plus rapide aussi... Y'a pas photo entre ça :
        % echo "toto=\"${PWD}\"" >> ~/.bashrc
        % toto="${PWD}"
        et ça :
        % ca toto

        Bon, j'dis pas que ça va boulverser nos vies de pauvres basheurs, mais c'est quand même pratique je trouve.
      • [^] # Re: Heu.....

        Posté par  . Évalué à 2.

        je dirais même
        alias 'cd /usr/src/linux' = 'cds'
  • # zsh

    Posté par  . Évalué à 1.

    zsh fait déjà ça :
    ~ $ toto=/usr/local/share
    ~ $ cd toto
    ~toto $ pwd
    /usr/local/share
    
    (il faut faire "setopt cdablevars" (si on ne l'avait pas fait, il aurait fallu mettre "cd ~toto", ah je viens de découvrir que ~toto est "expandé" partout, i.e. on peut faire "cp ~toto/tata tutu"), et puis aussi on peut mettre plein de "bookmarks" dans ses fichiers de démarrage)
    • [^] # Re: zsh

      Posté par  (site web personnel) . Évalué à 2.

      En plus :
      cdpath=(/usr/src /usr/local/src)
      $pwd
      /home/bapt
      $cd linux
      $pwd
      /usr/src/linux
      $cd gplflash2
      $pwd
      /usr/local/src/gplflash2

      (La completion fonctionne aussi dessus :)

      vive ZSH :)
      • [^] # bash

        Posté par  . Évalué à 1.

        Ca marche aussi avec bash (a part la complétion):
        bruno@silver:~$ pwd
        /home/bruno
        bruno@silver:~$ echo $CDPATH
        /usr/local/src:/usr/src/
        bruno@silver:~$ cd linux
        /usr/src/linux
        bruno@silver:/usr/src/linux$ cd gplflash2
        /usr/local/src/gplflash2
        bruno@silver:/usr/local/src/gplflash2$
        • [^] # toujours dans Zsh

          Posté par  . Évalué à 1.

          Dans le fichier des alias:

          hash -d muzik="/mnt/DiskA/Muzik"

          % cd ~muzik
          % pwd
          /mnt/DiskA/Muzik

          pas besoin d'une application dédiée !!!

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.