Expression régulière sous Unix utilisant ou opérateur

J’essaie d’imprimer, en utilisant grep, des lignes contenant du vasile ou une ligne contenant des ion . Ceci est la commande mais cela ne fonctionne pas:

 grep (vasile|ion) test.txt 

Je n’ai pas besoin de ça:

 grep vasile test.txt | grep ion test.txt 

essayer,

 terminal$ grep -e vasile -e ion test.txt 

Autre manière d’utiliser l’opérateur OR | dans grep

 terminal$ grep 'vasile\|ion' test.txt 

Si vous utilisez awk , vous pouvez faire:

 awk '/vasile|ion/' test.txt 

 awk '/vasile/ || /ion/' test.txt 

Essayez l’alternance avec l’option regex étendue de Grep:

 grep -E 'vasile |ion' file 

Cela devrait fonctionner avec tous les greps de Posix. \| est une extension GNU de BRE.