Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/09/2006, à 11:15

avr

cd+variable d'environnement+tabulation (konsole): petit désagrément

Bonjour,

Comme terminal, j'utilise konsole, avec bash.

Quand je fais mes bidouilles, j'ai souvent besoin d'aller dans les mêmes répertoires. Pour éviter la fastidieuse wink écriture du chemin complet lors d'un 'cd', j'ai déclaré un certain nombre de variables d'environnements (v.e.). Par exemple:

export toto=/chemin/vers/le/répertoire/que/je/veux/

Si j'utilise ces v.e., c'est dans un souci de rapidité. Pour améliorer encore mon efficacité, je trouve des noms bien spécifiques, ce qui fait qu'en 2 ou 3 lettres, je peux utiliser la tabulation (TAB).

Or, si (dans mon exemple si dessus) je tape

cd $toTAB

il m'écrit:

cd \$toto

(il prend le $ comme un caractère spécial). Et si j'appuie sur ENTER, il me dit:

bash: cd: $toto: Aucun fichier ou répertoire de ce type

Je suis en fait obligé, après avoir tapé la tabulation, de revenir avec les flèches pour supprimer l'antislash ('\'), et ensuite seulement je peux appuyer sur ENTER.
Ce n'est pas la fin du monde, mais dans une optique de rapidité, c'est un peu raté... Appuyer je ne sais pas combien de fois sur la flèche gauche pour aller supprimer le '\', c'est assez énervant.
Est-ce que ça vous fait la même chose? Et avec d'autres émulateurs de term? Vous avez une solution?

Ce qui est étonnant, c'est que si je tape:

echo $toTAB

il me complète tout bien! Il ne rajoute pas de '\' devant le $... Donc ENTER et j'ai la réponse. C'est bizarre que 'echo' réponde correctement et pas 'cd', non? Et c'est ce comportement que je souhaiterai obtenir avec 'cd'.

Merci de votre aide.

Hors ligne

#2 Le 14/09/2006, à 11:54

abetsic

Re : cd+variable d'environnement+tabulation (konsole): petit désagrément

Salut,

J'ai pas de solution directe à ton problème, mais je peux te proposer une alternative...

Tu peux essayer de déclarer un alias dans ton fichier .bashrc ou tout simplement dans la console si tu ne veux pas que l'alias soit présent à chaque fois que tu lances une nouvelle console.
alias bidule='cd /ton/repertoire/que/tu/veux'

et dans une console un simple "bidule" t'amèneras à ton répertoire...
Par contre tu ne peux pas l'utiliser comme un variabe et faire un "cp fichier bidule"
Peut être qu'il est possible de faire un alias du genre :
alias machin='/ton/repertoire/'
puis de faire "cp fichier machin" ou "cd machin" tu peux essayer...

Voilà en espérant t'avoir aidé

Hors ligne

#3 Le 14/09/2006, à 14:18

avr

Re : cd+variable d'environnement+tabulation (konsole): petit désagrément

Merci de votre aide.

la solution:
alias toto='cd /mon/fichier'
ne convient effectivement pas trop (quelle exigence!!), mais l'exemple du 'cp' inutilisable explique pourquoi (mes v.e. servent aussi à ça).
La 2e solution:

abetsic a écrit :

(...)
Peut être qu'il est possible de faire un alias du genre :
alias machin='/ton/repertoire/'
puis de faire "cp fichier machin" ou "cd machin" tu peux essayer...

a exactement le même comportement que de faire un export.

Voili, voilou... Pas tellement avancé...

Je ne l'ai pas noté, mais un 'cp' ou 'rm' n'acceptent pas la complétion.

-> Mais diable, pourquoi pas de complétion pour 'cp' ou 'rm' et si pour 'echo' et 'cd'?
-> Et pourquoi 'echo' et 'cd' ne gèrent pas de la même façon le $?
-> Et pourquoi 'cp' et 'rm' ne font pas de complétion mais acceptent la double TAB une fois que l'on écrit le '/' à la fin de la v.e.?
Oh là! que de questions...

Hors ligne

#4 Le 14/09/2006, à 19:34

trucutu

Re : cd+variable d'environnement+tabulation (konsole): petit désagrément

Peut être que l'indentation est plus intelligente que rajouter des caractères en fin de mot... Si tu utilises l'indentation avec un fichier qui contient des espaces dans le nom, tu va avoir des "\ " qui apparaissent pour traiter ce caractère. De la même manière, pour cd, le \ est sûrement inséré parce que la konsole se dit que le nom contient le caractère spécial $


La chanson du dimanche - "La pêche !"
PC acheté chez Novatux : entièrement satisfait.
Faire des recherches solidaires !

Hors ligne

#5 Le 15/09/2006, à 10:42

abetsic

Re : cd+variable d'environnement+tabulation (konsole): petit désagrément

une autre solution, encore plus crade, serait de faire des liens symboliques depuis ton home directory vers tout les dossiers que tu souhaites avoir en favoris...
par exemple :
ln -s /repertoire/super/long ~/bidule
après tu pourras faire des cd ~/bi<tab>, bon ça fait deux caractères supplémentaires à taper, mais au moins là tu pourras faire des cp et tout ce qui est possible habituellement.

Hors ligne