Commande find - ChtilandWiki

Commande find

Un article de ChtilandWiki.

Jump to: navigation, search



 Page PrécédentePage Suivante 


Exemple simple : comment trouver un fichier portant un nom donné ?

[delcros@mistra delcros]$ find / -name linux-test2 -print 
/home/delcros/linux-test2

(Un peu long n'est ce pas pour trouver la reponse dans tout cette grosse arborescence ? :-) ) En général on recherche rarement un fichier depuis la racine.

Décomposition de la commande de l'exemple : "/" indique que nous voulons chercher à partir de la racine notre fichier.

"-name " est l'option qui indique ici que nous voulons spécifier le nom d'un fichier.

"-print" demande à find d'afficher le résultat.

Pour chercher tous les fichiers commencant par "linux-tes" et définir à partir de quel répertoire on souhaite effectuer la recherche on utilise cette syntaxe :

[delcros@mistra delcros]$find /home/delcros -name 'linux-tes*' -print

Le nombre d'options de find est impressionnant. En voici quelques unes :

  • -type permet d'indiquer le type de fichier que l'on recherche. Si vous cherchez seulement un répertoire et non pas un fichier vous pourrez utilisez cette option :
[delcros@mistra delcros]$find /usr -type d -name bin -print
Ici, on demande à find de trouver les répertoires (l'argument "d" (comme "directory") de l'option -type indique que l'on cherche un répertoire) du nom de "bin" à partir du répertoire /usr.
  • -exec ou -ok permet d'exécuter une commande sur les fichiers trouvés. La différence entre -exec et -ok est que la deuxième vous demandera pour chaque fichier trouvé si vous souhaitez réellement réaliser l'opération :
[delcros@mistra delcros]$find -name 'linux-tes*' -print -ok rm {} \;
./linux-test
rm ... ./linux-test ? y [delcros@mistra delcros]$
Dans l'option -exec, la paire d'accolades se substitue aux fichiers trouvés, et l'anti-slash lié au point virgule forme une séquence d'échapemment.
On peut dire que cette présentation de find est assez sommaire, mais j'espère qu'elle vous laisse deviner ses capacités.




Voir aussi : Commande locate, Commande which


 Page PrécédentePage Suivante 


Concours du Mois