Vous n'êtes pas identifié(e).
1)Que faut-il écrire pour chercher plusieurs occurences(toto et tata)?
2)Que faut-il écrire pour chercher plusieurs occurences(toto et tout ce qui commence par mk)
tout ce qui contient toto:
tout ce qui commence par mk:
les 2 en même temps?
merci de votre aide
Dernière modification par Qowenta (14-04-2023 23:45:23)
Hors ligne
Hors ligne
Cette commande te fera toujours un retour vide, `ls -l`te retournant la liste des éléments du dossier dans lequel tu te situes avec un affichage qui démarre par les permissions sur les éléments listés, pas par les noms de fichiers:
Pour le résultat que tu cherches, il faudrait passer par un `ls`tout simplement, et je te le combine avec les fichiers contenant "toto" (le grep sur double pattern que tu veux faire):
Après, si l'objectif c'est de faire ça dans un script qui parcourt les éléments d'un dossier et te liste les fameux "contenant 'toto'" ou "débutant par 'mk'", je ferais plutôt un truc comme ça, sans passer par grep:
Evidemment, ici, `echo $elt`est à remplacer par l'action que tu as prévu de faire sur tes éléments ainsi isolés
Résultat de l'équivalent tassé sur une ligne:
Dernière modification par choops (12-04-2023 17:18:58)
Hors ligne
Je connais la commande grep qui cherche une seule occurence(toto)
La commande grep cherche pas dans le cas présent elle filtre la sortie
une sortie qui est tronqué a la base puisque toto ne sera pas cherché dans les sous répertoire (a moins d'avoir mis les bonnes options de ls)
c'est un peu de la bidouille , mais parfois c'est vrai que c'est rapide a écrire
mais je pense qu'il faudrait mieux utilisé find
pour une recherche dans le répertoire courant et tout les sous répertoire les fichiers commençant par mk et les fichiers contenant toto
voir -iname si on veut les noms avec majuscule ou pas
on peut ajouté l'option -ls
ou appliqué une commande sur chaque fichiers trouvé
https://debian-facile.org/doc:systeme:f … e-multiple
sinon j'ai plutôt tendance a l'écrire comme ça
edit: quoique selon le man
En outre, les variantes egrep, fgrep et rgrep sont respectivement les mêmes que les programmes grep -E, grep -F et grep -r.
Ces variantes sont obsolètes mais sont fournies pour assurer la rétro-compatibilité.
par contre le ^ n'est pas interprété on dirait sa match pas
Dernière modification par Croutons (12-04-2023 18:22:34)
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
Hors ligne
ls -lh |egrep '^mk|toto'
edit: quoique selon le manEn outre, les variantes egrep, fgrep et rgrep sont respectivement les mêmes que les programmes grep -E, grep -F et grep -r.
Ces variantes sont obsolètes mais sont fournies pour assurer la rétro-compatibilité.
par contre le ^ n'est pas interprété on dirait sa match pas
C'est exactement ce que je soulignais là: utiliser `ls`plutôt que `ls -l`, ce dernier faisant des retours ne démarrant pas par le nom de fichier, le '^' ne sera pas efficient:
ls -l | grep '^mk'
Cette commande te fera toujours un retour vide, `ls -l`te retournant la liste des éléments du dossier dans lequel tu te situes avec un affichage qui démarre par les permissions sur les éléments listés
Hors ligne
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
Hors ligne