Disons que nous avons deux fichiers.Passer un fichier avec plusieurs modèles à grep
match.txt: Un fichier contenant des motifs pour correspondre:
fed ghi
tsr qpo
donnees.txt: Un fichier contenant des lignes de texte:
abc fed ghi jkl
mno pqr stu vwx
zyx wvu tsr qpo
Maintenant, je veux lancer une commande grep qui doit renvoyer les première et troisième lignes de data.txt:
abc fed ghi jkl
zyx wvu tsr qpo
... parce que chacune de ces deux lignes correspond à l'un des motifs match.txt.
J'ai essayé:
grep -F -f match.txt data.txt
mais qui renvoie aucun résultat.
Informations grep: GNU grep 2.6.3
(Cygwin)
information OS: Windows 2008 R2
Mise à jour: Le fix est d'utiliser cette commande: tr -d "\r" <match.txt | grep -F -f - text.txt
Il semble que grep ne respecte pas correctement les fenêtres de fin de ligne (CR/LF) pour les fichiers de correspondance qui lui sont présentés via l'indicateur -f.
Mise à jour de grep cygwin vers la dernière version (de 2.5.4 à 2.6.3), le problème persiste. –