24.06.2018, 20:23 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

1

08.08.2015, 13:18

[gelöst] Befehl gesucht

Hallo zusammen

Ich bin auf der Suche nach einem Terminalbefehl, der es ermöglicht, in einer zu definierenden Datei das letzt Wort (die letzte Zeile) zu löschen, und diese dann veränderte Datei unter gleichem Namen wieder zu speichern.

Ich möchte dazu keinesfalls Editoren verwenden, da diese nicht auf allen Systemen installiert sind.

Gibt es dafür eine Möglichkeit?


MfG:
Knoppixsurfer

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Knoppixsurfer« (09.08.2015, 09:12)


2

08.08.2015, 15:26

Hallo Knoppixsurfer,
dafür könntest Du sed oder awk nehmen, diese Tools gehören zur Grundausstattung jedes Linux-Systems und ermöglichen die Script-gesteuerte Verarbeitung von Textdateien.
Der Befehl

Quellcode

1
sed -i -e '$d' datei.txt
löscht die letzte Zeile einer Datei.
Erklärung:
-i --> die Ausgangsdatei wird mit der geänderten Datei überschrieben
-e '$d' --> die auszuführenden sed Kommandos: $ steht für die letzte Zeile, d = delete

MfG

3

08.08.2015, 18:25

Ergänzend ein kleiner Lesetip zu "sed" .
Gruß Werner * Eigene Rescue-CD
remaster Grml * remaster Knoppix

4

09.08.2015, 09:16

Hallo l8night und Werner


Vielen Dank für euren Hinweis.

Genau das, was ich gesucht habe, und bei einer bekannten Suchmaschine nicht fand.


MfG:
Knoppixsurfer

Linux HardwareLinux Computer & PCs | Linux Notebooks & Laptops | Geek Shirts | Geek und Nerd Shirt Shop