[find] comportement bizarre

Applications, problèmes de configuration réseau
Arkadi510
newbie
Messages : 2
Inscription : lun. 12 déc. 2011, 16:14

[find] comportement bizarre

Message par Arkadi510 »

Bonjour à tous,

voici ce que j'ai sur mon écran (session ssh sur un ordi Arch)

Code : Tout sélectionner

[root@GESTION ~]# find /srv -name glpi*
find: paths must precede expression: glpi-0.80.5.tar
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]

[root@GESTION ~]# find /srv -name conf*
/srv/http/cacti/include/config.php
/srv/http/glpi/lib/ezcomponents/Base/src/interfaces/configuration_initializer.php
/srv/http/glpi/inc/config.class.php
/srv/http/glpi/config
/srv/http/glpi/config/config_db.php
/srv/http/glpi/config/config_db_old.php
/srv/http/glpi/config/config.php
/srv/http/glpi/ajax/config.tabs.php
/srv/http/glpi/front/config.form.php
La question: pourquoi avec le tempalte 'glpi*' il y a un message mais avec 'conf*' aucun message? Est-ce le comportement normal de cette commande? (à mon avis - pas du tout)

J'aimerais bien savoir vos avis, chère archèrs...
Dernière modification par tuxce le mer. 14 déc. 2011, 11:18, modifié 1 fois.
Raison : titre, code ...
oktoberfest
Maître du Kyudo
Messages : 1855
Inscription : mer. 06 janv. 2010, 13:51
Localisation : Ried - Alsace - France

Re: Commande find - comportement bizarre

Message par oktoberfest »

Salut,

personnellement je backslashe toujours le caractère * dans un find (find ... -name toto\*). Sinon bash va commencer par interpréter le * pour ensuite appeler find.
Dans ton répertoire courant, aurais-tu le fichier glpi-0.80.5.tar ?
La majorité des bugs se situe entre la chaise et le clavier...
Arrêtez de vous prendre la tête avec les partitions... passez au LVM
benjarobin
Maître du Kyudo
Messages : 15992
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: Commande find - comportement bizarre

Message par benjarobin »

Il faut que tu rajoute des quotes (guillemets) autour de glpi*
Ce qui ce passe c'est que bash sinon exécute cette commande : find /srv -name glpi glpi_autre1 glpi_autre2 ...
Sinon merci d'utiliser les balises codes

Edit: Grillé :)
Zsh | KDE | PC fixe : core i7, carte nvidia | Portable : Asus ul80vt
Titre d'un sujet : [Thème] Sujet (état)
Avatar de l’utilisateur
chipster
Maître du Kyudo
Messages : 2063
Inscription : ven. 11 août 2006, 22:25
Localisation : Saint-Étienne (42)
Contact :

Re: Commande find - comportement bizarre

Message par chipster »

Merci aussi de formater ton sujet comme il te l'a été demandé lors de la première édition :chinois:
nowahn
archer de cavalerie
Messages : 172
Inscription : lun. 04 août 2008, 19:03
Localisation : ailleurs

Re: [find] comportement bizarre

Message par nowahn »

Bonjour,

Que dit ls conf* glpi* ?

À mon avis, c'est Bash qui se comporte différemment entre les deux commandes (et c'est son comportement normal).

Comme déjà dit, si tu ne quote pas (avec un \ ou des "" ou '') tes patrons, ils sont d'abord interprétés par bash (il les remplace par la liste des fichiers qui correspondent, ou les laisse tel quel si rien ne correspond, voir man bash).

Je suppose que tu n'as pas de fichier conf* dans le répertoire d'où tu lances la commande, donc bash passe bien la chaîne 'conf*' à find.
Tu dois par contre avoir plusieurs (au moins deux) fichiers glpi* directement dans ce répertoire (glpi-0.80.5.tar doit être le deuxième que bash trouve).
Tu passes donc plusieurs noms à l'option -name, ce qui est une erreur.

Morale: toujours quoter les patrons pour la commande find.
Prends le temps de rêvasser, l'inspiration viendra ...
Répondre