Ich habe eine Datei wie folgt:
mime PI Name: ISHO SUCCESS RATE RT, Value: 95.663826
scr PI Name: RRC Access Failures due to UU, Value: 0.13394141
prog PI Name: RRC Access Failures due to UU, Value: 0.16077702
sch PI Name: RRC Access Failures due to UU, Value: 0.11781933
Ich möchte Text PI
bis entfernen Value:
. Ich habe es versucht
sed '/<PI>/,/<\/Value:>/d'
Irgendeine Hilfe?
text-processing
sed
Khalil Saad
quelle
quelle
PI
undValue:
tritt es auf verschiedenen Linien auf?Mit dem
d
Befehl insed
wird die gesamte Zeile gelöscht. Ich bin mir auch nicht sicher, warum Sie<
und verwenden>
. Vielleicht verwechseln Sie sie mit\<
und\>
dasgrep
bezeichnet Wortgrenzen? In diesem Fall sollten Sie wissen , dasssed
Anwendungen\b
für beide Arten von Wortgrenzen (Anfang und Ende). Sie können also so etwas schreiben:Für zusätzliche Robustheit würde ich
perl
für die verzögerte Quantifizierung von verwenden,.
so dass Sie den Text nur zwischen dem ersten Auftreten vonPI
und dem ersten Auftreten von löschenValue:
. Natürlich hängt alles von Ihrem Anwendungsfall ab.quelle
Verwenden Sie den folgenden Code, um mehrere Zeilen zwischen Mustern zu entfernen (einschließlich Zeilen mit Mustern):
Wenn Sie Ihre_Datei direkt ändern möchten:
quelle