[[sed]]
 

SED

mit SED alles in Großbuschtaben umwandeln:

# echo "buchstaben" | sed 's/.*/\U&/g'
BUCHSTABEN

mit SED alles in Kleinbuschtaben umwandeln:

# echo "BUCHSTABEN" | sed 's/.*/\L&/g'
buchstaben

Alles zwischen der ersten und zweiten Leerzeile anzeigen:

# cat [Datei] | sed -e '1,/^$/ d' -e '/^$/ q'

Alles von “# Beginn“ bis “# Ende“ wird aus der Datei entfernt:

# sed -i -e '/^# Beginn/,/^# Ende/ d' /pfad/datei.txt

Alles von “# Blockanfang“ bis Dateiende wird aus der Datei entfernt:

# sed -ie '/# Blockanfang/,// d' /pfad/datei.txt

sed arbeitet strikt Zeilenorientiert, die Zeilenumbrüche sind dort immer das Zeichen den Zeilenbuffer jetzt zu bearbeiten, und sind aus diesem Grunde mit sed alleine nur äußerst umständlich zu entfernen.

In der man-Page steht dazu folgendes:

The escape sequence \n matches a newline character embedded in the
pattern space. You can't, however, use a literal newline character
in an address or in the substitute command.

Eine solche umständliche Methode zeige ich mal Beispielhaft hier:

# cat [viele Zeilen] | sed -e 'H; $blable; d; :lable; g; s/\n/ /g' > [Zeilenumbrüche sind jetzt Leerzeichen]
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht:GNU Free Documentation License 1.2
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki