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 02/03/2012, à 22:00

pseudomystere

faire un ls après un cd

bonjour à tous, je souhaiterai modifier la commande cd afin qu'elle fasse aussi un ls.
problème : je n'arrive pas à savoir où est la cmd cd (which cd)...
Si quelqu'un a une idée ou une astuce ! smile
merci

Hors ligne

#2 Le 02/03/2012, à 22:07

Watael

Re : faire un ls après un cd

salut,

la commande cd est une commande interne du shell.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 02/03/2012, à 22:07

pires57

Re : faire un ls après un cd

salut, il suffit d'utiliser l'agrégat &&
je te donne un exemple :

cd /var/www/ && ls

Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#4 Le 02/03/2012, à 22:15

pseudomystere

Re : faire un ls après un cd

Wooow qu'elle réactivité !

Watael : c'est à dire ? on ne peut pas la modifier ?
pires : merci je faisais aussi cd /;ls mais le truc c'est que je voulais que ça fasse l'affichage automatiquement en fait (ça peut parraître pas beaucoup mais j'en ai très souvent besoin).

je pourrai me faire un script du genre :

cd
ls

mais le problème est que je n'arrive pas à donner des paramètres à cd (du genre cd /home)

ou peut être :

#!/bin/bash
read dossier
cd $dossier;
ls

ne fonctionne pas non plus


Merrci à vous 2 wink

Dernière modification par pseudomystere (Le 02/03/2012, à 22:23)

Hors ligne

#5 Le 02/03/2012, à 22:23

pires57

Re : faire un ls après un cd

tu pourrais peut être faire un script bash mais personnellement pour des "cd" j'en vois pas vraiment l’intérêt


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#6 Le 02/03/2012, à 22:26

pseudomystere

Re : faire un ls après un cd

souvent je ne connais pas le contenu de mon dossier du coup je fais presque systématiquement un ls, c'est pour ça ^^

Hors ligne

#7 Le 02/03/2012, à 22:35

Haleth

Re : faire un ls après un cd

ls /

Par exemple


Ubuntu is an ancien African word which means "I can't configure Debian"

Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.

Hors ligne

#8 Le 02/03/2012, à 22:39

pseudomystere

Re : faire un ls après un cd

ah oui pas mal, je m'en sers jamais de celle là ! Merci smile
Mais vous trouvez pas ça intéressant d'avoir un affichage de ce qu'on a directement après qu'on est fait un cd ? (d'ailleurs c'est un peu comme quand on fait avec un explorateur de fichier comme nautilus par exemple!)

Hors ligne

#9 Le 02/03/2012, à 22:42

pires57

Re : faire un ls après un cd

alors la je peut t'aider wink
lorsque tu tape ta commande

cd /var/

si tu appuie  deux fois sur la touche tabulation, il va te lister les dossiers qui se trouve dans /var/
Les fichiers par contre ne sont pas listé
Edit :
si tu cherche un fichier mais ne connais pas son chemin voila la commande:

find / -name "nom_fichier"

Dernière modification par pires57 (Le 02/03/2012, à 22:48)


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#10 Le 02/03/2012, à 22:43

Haleth

Re : faire un ls après un cd

Modifie ~/.bashrc, rajoute :

alias cd="ls $1; cd $1"

Puis relance bash, ou fait :

source ~/.bashrc

Ubuntu is an ancien African word which means "I can't configure Debian"

Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.

Hors ligne

#11 Le 02/03/2012, à 22:46

pseudomystere

Re : faire un ls après un cd

d'accord merci pour cette astuce pires57 ! Cette solution me va très bien !

merci à tous ! je passe en résolu!

EDIT : encore mieux cette solution, je vais essayer de comprendre la commande smile
EDIT 2 : je pense avoir compris : on fais un alias de cd qui désormais affiche le premier paramètre (d'où le $1 qui représente le chemin que je tape) puis fais un cd toujours avec le même paramètre. C'est bien ça ?
Dernière question et après j'arrête tongue : pourquoi on a modifié bashrc et pas mis dans un script spécial qu'on ajoute ensuite dans le PATH (en premier pour qu'il soit bien pris en compte)? merci ! smile

Dernière modification par pseudomystere (Le 02/03/2012, à 22:56)

Hors ligne

#12 Le 02/03/2012, à 23:35

pingouinux

Re : faire un ls après un cd

Bonsoir,

Haleth #10 a écrit :

alias cd="ls $1; cd $1"

Je ne pense pas que ça marche. Plutôt faire un script :

#!/bin/bash
cd "$1"
ls

Ajouté :
Ou une fonction dans .bashrc :

moncd() { cd "$1"; ls; }

Dernière modification par pingouinux (Le 02/03/2012, à 23:41)

Hors ligne

#13 Le 02/03/2012, à 23:49

pingouinux

Re : faire un ls après un cd

@Haleth #13 : Ça ne marche pas chez moi
GNU bash, version 4.2.8(1)-release (x86_64-pc-linux-gnu)

Hors ligne

#14 Le 03/03/2012, à 00:01

pingouinux

Re : faire un ls après un cd

Haleth #15 a écrit :

alias toto="ls $1; cd $1"

En fait, le $1 dans ta commande n'est pas pris en compte. Quand tu lances la commande

toto /

c'est comme si tu faisais

ls; cd /

Tu listes le répertoire de départ.

Hors ligne

#15 Le 03/03/2012, à 00:36

Haleth

Re : faire un ls après un cd

Hawé en effet ..

Ta version marche beaucoup mieux (la fonction) !


Ubuntu is an ancien African word which means "I can't configure Debian"

Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.

Hors ligne

#16 Le 04/03/2012, à 18:57

pseudomystere

Re : faire un ls après un cd

Merci !
Mais pourquoi  (en gros) ça ne marchait pas, puisqu'on disait bien de faire un ls sur le premier paramètre non ? smile

Hors ligne

#17 Le 04/03/2012, à 19:57

aduxas

Re : faire un ls après un cd

pseudomystere a écrit :

Mais pourquoi  (en gros) ça ne marchait pas, puisqu'on disait bien de faire un ls sur le premier paramètre non ? smile

Fais "man bash" et va vers la section "ALIAS"

There is no mechanism for using arguments in the replacement text.  If arguments are needed, a shell function should be used (see FUNCTIONS below).

La shell fait une simple substitution de l'alias par la chaîne de remplacement.  Rien de plus.  Pourque ça marche, la shell devrait insérer les arguments en plein milieu de cette chaîne.  C'est un peu trop demander...

Hors ligne