4 votes

Utilisation de Linux grep ou find

Comment trouver un fichier sur mon disque dur qui commence par io_file ?

J'ai essayé :

grep -r io_file*` 

et

find -name io_file*

find n'a rien donné alors que grep semble prendre des siècles sans aucun résultat.

Qu'est-ce que je fais de mal ?

1 votes

Grep et find ne sont pas destinés à la même chose.

1 votes

(pas le même Tom que l'affiche)

0 votes

Avec tout le respect que je dois à la véritable magie de la recherche montrée dans les autres réponses, une alternative est d'installer ack . Il s'agit d'un outil Perl dont l'interface est plus simple et qui englobe les principales fonctionnalités de find et grep.

0voto

Mike Points 696

Le Shell développe les jokers et transmet le résultat à grep, vous devez donc soit échapper les caractères * ou utilisez des guillemets :

find / -name io_file\*
find / -name 'io_file*'
find / -name "io_file*"

Les trois font la même chose sur ma boîte Linux.

0voto

Pat Points 18943

find -name io_file* cherchera dans le répertoire courant et en dessous seulement. Si vous souhaitez effectuer une recherche sur l'ensemble du disque dur, vous devez spécifier le chemin d'accès : find / -name io_file* . Il en va de même pour grep -r ; il ne cherchera que dans le répertoire courant et en dessous.

Le site find est très pratique, mais son utilisation peut être un peu contre-intuitive. Je vous recommande de lire la page de manuel de find ( man find ), le temps investi en vaut la peine.

0voto

Avram Points 133

Parce que tu n'as pas donné grep un fichier, il fonctionne sur l'entrée standard et attend que vous tapiez quelque chose. C'est la mauvaise commande de toute façon. Quant à trouver vous avez besoin d'un répertoire de départ et devez mettre io_file* entre guillemets, sinon il sera développé par le Shell :

find / -name "io_file*"

Vous pouvez également utiliser locate "io_file*" ce qui est plus rapide mais peut être imprécis.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X