Je dois donc sortir chaque ligne entre deux lignes presque identiques et éventuellement identiques d'un fichier journal.BASH - Sortie de toutes les lignes entre (et incluant) deux lignes identiques/presque identiques
Le journal ressemble à ceci:
Sat Sep 17 13:03:53
FOOBAR
this is FOO
Sun Sep 18 12:04:12
FOO-1543 Test
FOO-1543 BAR
FOO-1543 Test
FOO-1543 BAR
FOO-1543 Test
Mon Sep 19 00:00:01
FOO-1543 BAR
FOO-1543 Test
Tue Sep 20 16:13:37
FOO-1543 BAR
FOO-1543 Test
Et ainsi de suite.
J'ai déjà essayé d'utiliser
sed -n '/FOO-1543/,/FOO-1543/p' ${input} >> ${output}
sed -n '/^\FOO-1543/,/^\FOO-1543/p' ${input} >> ${output}
awk '/FOO-1543/,/FOO-1543/' ${input} >> ${output}
awk '/^\FOO-1543/,/^\FOO-1543/' ${input} >> ${output}
La sortie que je reçois de ces:
FOO-1543 Test
FOO-1543 BAR
FOO-1543 Test
FOO-1543 BAR
FOO-1543 Test
FOO-1543 BAR
FOO-1543 Test
FOO-1543 BAR
FOO-1543 Test
La sortie Je veux:
FOO-1543 Test
FOO-1543 BAR
FOO-1543 Test
FOO-1543 BAR
FOO-1543 Test
Mon Sep 19 00:00:01
FOO-1543 BAR
FOO-1543 Test
Tue Sep 20 16:13:37
FOO-1543 BAR
FOO-1543 Test
J'ai besoin de sortie chaque ligne à partir de le premier FOO-1543 jusqu'à la toute dernière fois il apparaît dans le document y compris lin es qui ne contiennent pas FOO-1543 mais se situent entre la toute première et la dernière ligne contenant FOO-1543.
Le numéro de ligne peut varier, le début des lignes reste toujours le même.
S'il vous plaît laissez une explication de la solution si possible.
Umm 'grep "^ Foo-" entrée'? – VM17
Je ne comprends pas ce que l'exigence de quoi extraire est? Quelles lignes est-il entre? – 123
La question n'est pas claire du tout. Veuillez développer l'exemple pour mieux illustrer ce que vous voulez. – VM17