Effectuer une recherche sous centos

Résolu
Bonjour,

Je cherche a passer une commande pour retrouver un fichier sous centos,

un fichier de 1mo et contient le mot toto dans le fichier et je veux retourner le nom du fichier dans un autre fichier

je partirais sur un find avec un grep.

du genre : find -type f -size 10k -exec grep "toto" {} \; >> /tmp/trouvetoto

mais je vois pas comment retourner le nom du fichier .....

Merci d'avance

4 réponses

  1. tu peux utiliser cette commande pour rechercher un fichier:
    find / -name 'Your_file'
    1. Contributeur
      Bonjour ! (ça mange pas de pain)

      As-tu lu le post depuis le début ?

      Si oui, qu'amène ta réponse de plus ?
  2. cela marche mais la commande ne s'arrête pas !

    probablement du faite qu'elle scan tout le disque !

    car effectivement si je fait une recherche que dans /etc cela fonctionne !!!!

    merci pour ton aide.
    1. Contributeur
      probablement du faite qu'elle scan tout le disque !
      Si tu scannes depuis la racine c'est fort probable.
      merci pour ton aide.
      De rien ;-)
  3. d'accord.

    Désolé mais je débute en linux et ca ne marche pas, je suis un peu perdu, la commande find et grep sont assez complexe je trouve.
    1. Contributeur
      Est-ce que la commande
      find -type f -size 10k -exec grep "toto" {} \;
      te retourne quelque chose déjà ?

      Comme tu ne précises pas le chemin, je suppose que tu la tapes directement depuis le répertoire censé contenir le fameux fichier recherché ???
    2. @zipe31je passe la commande a la racine,

      et oui j'ai des retours
    3. Contributeur
      @Joe051Des retours de quel genre ?
      Et tu voudrais quoi comme sortie ?
    4. Il me renvoie les lignes des fichiers en chemin absolue ou se trouve le prenom toto. Car j'ai rajouter l'argument que tu m'as donné au début.

      Et je voudrais les renvoyer dans un fichier.
    5. Contributeur
      @Joe051Ben maintenant il suffit de rajouter
      >> /tmp/trouvetoto 
      à la fin de ta ligne de code (comme tu l'avais fait dans ton message initial).
  4. Contributeur
    Salut,

    man grep :

           -l, --files-with-matches
    Suppress normal output; instead print the name of each input file from which output would normally have been printed. The scanning will stop on the first match. (-l is specified by POSIX.)