Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Zeilen per Script einfügen

Empfohlene Antworten

Veröffentlicht

Hallo,

als Script-Neuling hab ich ne Frage.

Ich hab etwa 50 html Seiten und möchte jetzt in Zeile 5,

3 Zeilen Code einfügen. Zwar kann ich das alles per vi machen aber en bissel umständlich.

komm ich mit "sed" weiter?

Danke

Xardas

Hi..

ja, der ist genau das richtige... hier hast du einen kurzen Artikel über sed:

Mit einem 'normalen' Editor ist das Bearbeiten von Dateien etwas aufwaendig:

Datei laden, Position suchen, Text aendern, Datei speichern.

Wie aufwaendig dies ist, sieht man erst im Vergleich zum Streameditor sed. Wenn wir z.B. die ersten drei Zeilen einer Datei loeschen wollen, gehen wir so vor:

sed -e '1,3D' eingabe.txt

Wenn Sie dieses Beispiel mit einer echten Datei testen, wird Ihnen vermutlich nicht gefallen, dass die Ausgabe nur auf dem Bildschirm erscheint. Also leiten wir die Standardausgabe auf eine Datei um:

sed -e '1,3D' eingabe.txt > ausgabe.txt

Die Datei eingabe.txt bleibt unveraendert. In ausgabe.txt wird der Inhalt von eingabe.txt ohne die ersten drei Zeilen geschrieben.

Wenn Sie die letzte Zeile loeschen wollen:

sed -e '$D' eingabe.txt > ausgabe.txt

Das Zeichen $ steht als fuer die letzte Zeile. Dieser Befehl wuerde also alles ab der 2. Zeile loeschen:

sed -e '2,$D' eingabe.txt > ausgabe.txt

Statt der Zeilennummern koennen wir aber die Grenzen des Arbeitsbereichs auch mit regulaeren Ausdruecken festlegen. Der folgende Befehl loescht alles ab dem Auftreten von 'BEGIN' bis zum Auftreten von 'END':

sed -e '/BEGIN/END/D' eingabe.txt > ausgabe.txt

Wuerde 'END' nicht gefunden, so wuerde sed bis zum Dateiende weiter loeschen.

Zu guter Letzt wollen wir die Auswahl umkehren - es sollen z.B. alle Zeilen geloescht werden, nur die letzte nicht:

sed -e '$ ! D' eingabe.txt > ausgabe.txt

Das geht natuerlich auch mit regulaeren Ausdruecken:

sed -e '/BEGIN/END/D' eingabe.txt > ausgabe.txt

Hinweis:

sed kann noch viel mehr (z.B. Zeilen einfuegen und aendern) und entfaltet seine wahre Kraft erst im Zusammenhang mit Skripten. Darueber aber spaeter mehr. (dln)

(Quelle: Linux-Newsletter vom 08.11.2002)

Gruß Taz

OK, danke.

Werd mich mal dransetzen und mein Glück versuchen.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.