Abschl. Zeilenumbruch falls noch nicht vorhanden

F

FrankSchmitz

Jungspund
Hallo Forum!

Ich ersetze in einer Liste von Dateien einen bestimmten String mit "sed", um diese zu anonymisieren.
Wenn die Datei keinen abschliessenden Zeilenumbruch hat, dann wird die letzte Zeile aber ärgerlicher Weise nicht mit heraus geschrieben.

Daher würde ich der Datei gerne einen abschliessenden Zeilenumbruch anfügen - aber nur, wenn die Datei noch nicht mit einem Zeilenumbruch abschliesst (damit das bei Mehrfachausführung nicht endlos wird).

Wie frag´ ich also am einfachsten ab, ob die Datei schon mit einem Zeilenumbruch abschliesst?

Hätte mir das in etwas so vorgestellt:
if [ `tail -1 DATEI` = '\n' ] ; then (...)
 
Code:
 if [ -z "$(tail -1 DATEI)" ]; then echo "leer";else echo "nicht leer";fi
 
Code:
[[ -z $(sed -n '$p' foo.txt) ]] && echo "trailing \\n" || echo "no trailing \\n"
 

Ähnliche Themen

CSV Datei mit sed manipulieren/optimieren/ergänzen

bash: Fehlermeldung und Werte in Array sortieren?

Last mit etc/passwd anzeigen lassen

Problem mit sed Zeilenumbruch

dovecot und postfix Konfiguration Problem

Zurück
Oben