Pourquoi mettre une seule lettre entre crochets dans une expression régulière grep?


19

J'ai vu plusieurs cas où les gens font cela:

grep [f]oobar

Mais je ne comprends pas pourquoi c'est préférable à

grep foobar

Hmm .. Je pensais que c'était censé correspondre à la plage de caractères dans []. S'il ne s'agit que d'un seul personnage, cela pourrait être juste pour le rendre compliqué :) Peut-être y a-t-il quelque chose de plus.
— Chida

Quelque chose de si simple peut être si beau
— Chida

Réponses:


33

Il n'y a aucune raison pour que la syntaxe préférable soit seule. Il est parfois utilisé comme hack lors de la "réception" d'un processus (par exemple, ps aux | grep [a]pache). L'utilisation de cette syntaxe empêche grep de faire correspondre sa propre ligne de commande dans la liste des processus.

Voir Comment empêcher «ps» de signaler son propre processus?


4
C'est le seul exemple courant de cette syntaxe que je connaisse.
— ewwhite

En fait, vous avez raison. Les derniers exemples que j'ai rencontrés provenaient d'une "exclusion
— PS
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.