# Texte bearbeiten

csplit | Zerlegt den Text an vorgegebenen Stellen (Muster) in einzelne Dateien. Das Muster wird zwischen zwei Slashes eingeschlossen.
`user@sonne> csplit -k --prefix mail > /var/spool/mail/user /^From/`
cut | Extrahiert Spalten aus jeder Zeile eines Textes.
`user@sonne> ls -l /boot | cut -b 1-11,56- total 718 -rw-r--r-- System.map -rw-r--r-- boot.b -rw-r--r-- chain.b -rw------- map -rw-r--r-- vmlinuz`
expand |
`user@sonne> expand file1 > file2`
fold | Bricht lange Textzeilen an vorgegebenen Positionen um.
`user@sonne>cat > testdat Das ist eine lange Zeile [Enter],[Ctrl][D] user@sonne> fold -12 testdat Das ist eine lange Zeile`
fromdos | Konvertiert DOS-Zeilenenden ins Linux-Format.
grep | Sucht Textmuster innerhalb der Eingabe.
`user@sonne> ps eax | grep bash 167 2 S 0:00 -bash 166 1 S 0:00 -bash TERM=linux HZ=100 HOME=/... 1630 p0 S 0:00 grep bash PWD=/home/user...`
head | Zeigt die ersten (10) Zeilen einer Datei an.
`root@sonne> head -20 /var/log/messages`
join | `join` erwartet zwei Eingabedateien (wenn eine fehlt, liest `join` von der Standardeingabe), vergleicht diese zeilenweise und schreibt alle identischen Zeilen auf die Standardausgabe. Stimmen also die n-ten Zeilen überein, werden die n-ten Zeilen ausgegeben. Leerzeilen werden ignoriert.
less | Zeigt seitenweise Dateien an. Mittels `/ muster` bzw. `? muster` kann in der Datei nach `muster` gesucht werden. `less` beherrscht eine Unmenge an Optionen und Kommandos. Beendet wird das Programm durch <Q>.
more | Wie `less`, allerdings können die Cursortasten nicht zur Navigation verwendet werden. Im Text vorwärts scrollt man mit Hilfe der Leertaste; zurück geht's mit `<b>`.
nl | Nummeriert die Zeilen der als Argumente übergebenen Dateien und schreibt das Ergebnis auf die Standardausgabe. Ohne Angabe von Dateien liest `nl` von der Standardeingabe.
`user@sonne> nl index.html 1 <HTML> 2 <HEAD< 3 >TITLE>Index</TITLE> 4 </HEAD> 5 <frameset cols="200,*"> 6 <frame src="contents.html" name="link"> 7 <frame src="foil1.html" name="foil1"> 8 </frameset> 9 </HTML>`
paste | Vereint mehrere Texte zeilenweise.
`user@sonne> less test1.txt Zeile1 aus test1.txt Zeile2 aus test1.txt[Q] user@sonne> more test2.txt Zeile1 aus test2.txt Zeile2 aus test2.txt user@sonne> paste test1.txt test2.txt Zeile1 aus test1.txt Zeile1 aus test2.txt Zeile1 aus test1.txt Zeile2 aus test2.txt`
recode | Konvertiert zwischen verschiedenen Zeichensätzen.
sed | Stream-Editor (programmierbar, siehe Manual Page).
sort | Sortiert seine Eingabe.
`user@sonne> ls -l /boot | sort +4 -rw-r--r-- 1 root root 300 Dec 11 22:08 chain.b -rw-r--r-- 1 root root 4536 Dec 11 22:08 boot.b -rw-r--r-- 1 root root 9728 Feb 15 16:01 map -rw-r--r-- 1 root root 131719 Feb 15 16:01 System.map -rw-r--r-- 1 root root 579254 Feb 15 16:01 vmlinuz`
tac | "Verkehrtes cat".
`user@sonne> tac test1.txt Zeile2 aus test1.txt Zeile1 aus test1.txt`
tail | Zeigt die letzten (10) Zeilen einer Datei an.
`user@sonne> tail /var/log/messages`
todos | Gegenstück zu `fromdos`.
tr | Ersetzt in einer Datei vorgegebene Zeichen durch andere Zeichen.
`user@sonne> cat testdat Weiteres zu TR siehe: man TR user@sonne> tr TR tr < testdat Weiteres zu tr siehe: man tr`
uniq | Entfernt mehrfach auftretende Zeichen in einer sortierten Datei.
`user@sonne> less testdat eine erste Zeile eine zweite Zeile eine erste Zeile user@sonne> sort testdat | uniq eine erste Zeile eine zweite Zeile`