est-il un moyen de grep 2 occurrences d'un mot ou d'une instance d'un autre mot dans une seule ligne de cmd avec perl (perl est un must)greping deux choses différentes d'une commande de queue
Je suis en train de faire un fichier queue -f | grep -m 2 word_x OU grep word_y
J'essaie d'attraper word_x deux fois dans le fichier, si cela arrive, la queue s'arrête. Mais word_x n'apparaît pas toujours, donc j'aime avoir un autre word_y pour arrêter la commande tail.
si word_x apparaît 2 fois ou plus annuler la queue;
si word_x apparaît seulement 1 fois, recherchez une occurrence de word_y et annulez la queue;
si word_x n'apparaît pas mais que le mot y semble annuler la queue;
Word_y est le dernier mot qui apparaîtra toujours sur mon fichier.
Il peut donc être comme ces 3 exemples
texte
texte
word_x texte word_x
Test
word_y
texte
texte
texte word_x
Test
word_y
texte
texte
texte
word_y
je dois la queue du fichier. Je peux utiliser d'autres commandes, il n'a pas besoin d'être grep.
Est-ce possible? J'ai essayé plusieurs choses mais ne peux pas venir avec une solution simple, peut-être ce n'est pas possible de le faire sur une instruction de ligne de commande unique.
[edit] votre question pour inclure quelques lignes d'entrée d'échantillon concis et testable et la sortie attendue. Si vous voulez dire 'tail -f' au lieu de' tail', alors assurez-vous de le préciser - c'est une distinction très importante. –
Aussi, voulez-vous des mots entiers. (par exemple si 'abc' était un mot,' abcd xyz' peut être une correspondance ou seulement 'abc xyz'). Plus vous spécifiez ceci, meilleurs seront les résultats –
Je ne peux pas voir ce que cela a à voir avec Perl? –