UNIX verwenden,Unix-Befehl Text zu suchen und zu kopieren vollständige XML
Meine Protokolldatei mehr XML-Code enthält. Wie kann ich mit UNIX-Befehl oder -Skript suchen, damit ich alle XML-Dateien, die contain abc enthalten, bekommen kann?
Zum Beispiel enthält die Protokolldatei 4 XMLs. Ich möchte eine neue Datei erstellen, die alle XML halten, die **<value>abc</value>**
<createR> <----- this is starting tag of XML
<value>abc</value> <----- search for this value
<val>xyz</val>
</createR> <----- this is end tag of XML
<createR>
<value>123</value>
<val>xyz</val>
</createR>
<createR>
<value>abc</value>
<val>xyz</val>
</createR>
<createR>
<value>qpw</value>
<val>xyz</val>
</createR>
Wunsch heraus setzen in neue Datei enthalten
<createR>
<value>abc</value>
<val>xyz</val>
</createR>
<createR>
<value>abc</value>
<val>xyz</val>
</createR>
ich mit grep bin versucht, aber nur 2 Zeile nicht vollständig XML bekommen. Das XML-Start-Tag ist <createR>
und das END-Tag </createR>
.
Es könnte sich ändern, dass alle diese XML in einer einzigen Zeile protokolliert werden können.
Danke, aber was, wenn es nicht Zeilenumbruch. Es besteht die Möglichkeit, dass alle XML-Dateien in einer einzigen Zeile geloggt werden. – fresher
Wird es Platz geben, wenn in Input_file keine neue Zeile vorhanden ist? – RavinderSingh13
ja, es wird sicher Platz geben – fresher