Wenn Sie im Allgemeinen eine Datei mit dem Inhalt des Formulars abcde haben , wobei Abschnitt a vor Muster b steht , Abschnitt c vor Muster d steht , dann Abschnitt e folgt und Sie die folgenden sedBefehle anwenden , erhalten Sie die folgenden Ergebnisse.
In dieser Demonstration wird die Ausgabe durch dargestellt => abcde, wobei die Buchstaben zeigen, welche Abschnitte in der Ausgabe enthalten wären. Somit aezeigt eine Ausgabe nur der Abschnitte a und e , acewären die Abschnitte a , c und e usw.
Beachten Sie, dass wenn boder din der Ausgabe erscheinen, dies die Muster sind, die erscheinen (dh sie werden so behandelt, als wären sie Abschnitte in der Ausgabe).
Verwechseln Sie das /d/Muster auch nicht mit dem Befehl d. Der Befehl ist bei diesen Demonstrationen immer am Ende. Das Muster liegt immer zwischen dem //.
sed -n -e '/b/,/d/!p' abcde => ae
sed -n -e '/b/,/d/p' abcde => bcd
sed -n -e '/b/,/d/{//!p}' abcde => c
sed -n -e '/b/,/d/{//p}' abcde => bd
sed -e '/b/,/d/!d' abcde => bcd
sed -e '/b/,/d/d' abcde => ae
sed -e '/b/,/d/{//!d}' abcde => abde
sed -e '/b/,/d/{//d}' abcde => Ass
extra characters at the end of d commandFehler zu vermeiden , müssen Sie vor den schließenden Klammern Semikolons hinzufügensed '/^#/,/^\$/{/^#/!{/^\$/!d;};}' file.txt