ed: Unterschied zwischen den Versionen
Michi (Diskussion | Beiträge) |
Michi (Diskussion | Beiträge) |
||
Zeile 26: | Zeile 26: | ||
EOF-EOF-EOF | EOF-EOF-EOF | ||
done | done | ||
ed -s /home/sisis/sql/sikis/$tabName.sql << EOF-EOF-EOF > /dev/null | |||
1 | 1 | ||
/^;/ | /^;/ |
Version vom 10. Januar 2009, 11:40 Uhr
Der Texteditor ed ist auf allen Unix- oder Unix-ähnlichen Systemen verfügbar. ed kann interaktiv oder innerhalb eines Shell-Skripts für Bearbeitungen von Textdateien verwendet werden und arbeitet zeilenorientiert: Die Textbearbeitung bezieht sich immer auf eine Zeile oder eine Auswahl von Zeilen. Beim interaktiven Gebrauch stellt ed nur eine Zeile zur Bearbeitung zur Verfügung, es ist also nicht möglich, sich vertikal durch den Text zu bewegen.
Der nicht interaktive Zeichenstromeditor sed beerbte den ed in einer seiner Grundfunktionen und baute sie aus, der zeilenorientierte Editor ex (der die Grundlage des vi bildet) wurde durch ed inspiriert.
Verwendung
Im folgenden Beispiel wird ed interaktiv auf die Datei "file" angewandt. Von der ersten bis zur letzten Zeile: Ersetze jede Zeichenfolge " vi" durch die Zeichenfolge " ex". Schreibe die bearbeitete Datei zurück. Beende.
$ echo ' 1,$s/ vi/ ex/g w q ' | ed file
Mit Befehlen der folgenden Art sollen zusätzliche Zeilen eingefügt werden können (was sed nicht kann). Ich habe mich allerdings nicht damit beschäftigt, wie das genau funktioniert.
DATABASE=sisis for tabName in koe_daten koe_kette do rm -f /tmp/line.$$ /tmp/creat.$$ /tmp/index.$$ /tmp/error.$$ ed -s $DATABASE.sql << EOF-EOF-EOF > /dev/null 1 /TABLE.*$tabName / +,+w /tmp/line.$$ q EOF-EOF-EOF done
ed -s /home/sisis/sql/sikis/$tabName.sql << EOF-EOF-EOF > /dev/null 1 /^;/ 1,.w /tmp/creat.$$ +,\$w /tmp/index.$$ q EOF-EOF-EOF
Weblinks
- ed (GNU.org)