Grep et expression réguliere

Résolu
pcsystemd Messages postés 734 Statut Membre -  
pcsystemd Messages postés 734 Statut Membre -
Bonjour,

voila je souhaite savoir a quoi correspond le caractére # dans l'expression suivante :

grep -i "^[^#]*DEBUG" foo.txt

Merci

7 réponses

dubcek Messages postés 19021 Statut Contributeur 5 639
 
ce grep affiche les lignes qui contiennet DEBUG et ne sont pas des lignes de commentaires
1
jacinthe87 Messages postés 204 Statut Membre 3
 
# n'est pas une expression reguliere, d'aprés ce que tu as ecris, tu veux afficher tous ce qui ne commence pas par #.
enfin je crois
0
Manu
 
Bonjour,

Le caractère # correspond à un caractère #

et vous voulez afficher les lignes commençant par DEBUG en faisant abstraction des éventuels caractères # qui pourraient précéder le DEBUG

Manu
0
Manu
 
Rebonjour

Il fallait lire

vous voulez afficher les lignes contenant DEBUG non précédé d'un caractère #

Manu
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dubcek Messages postés 19021 Statut Contributeur 5 639
 
afficher les lignes qui contiennent DEBUG et qui ne débutent pas par #
0
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité 3 570
 
Salut,

vous voulez afficher les lignes contenant DEBUG non précédé d'un caractère #
Le but d'une regex c'est de trouver une correspondance et pas de trouver une non correspondance.

[^] - c'est une classe complementée qui veut dire de trouver tout caractère sauf les caractères existants dans la classe et pas de ne pas trouver les caractères existants dans la classe.

Même si ça semble être la même chose ce n'est pas le cas.

Donc on dirait plutôt
- vous voulez afficher les lignes contenant DEBUG et précédé de tout caractère sauf le #
0
pcsystemd Messages postés 734 Statut Membre 23
 
Merci a tous.
0