An verschiedenen Stellen im Internet habe ich gefunden:
\015
\012
\x0a - hex
\n
\r
alles als Synonyme für verschiedene Zeilenumbrüche / Wagenrückläufe ...
Aber in diesem kleinen Skript kann ich nicht erkennen, wann ich auf eine neue Zeile stoße - kann mir jemand sagen, worauf ich in der if-Zeile achten soll?
#!/bin/bash
test="this is a
test"
for a in "$test"; do
if [[ "$a" == '\012' ]] ; then
echo "FOUND NEWLINE"
fi
echo "$a"
done
wc -lwird 0 zurückgegeben. Sie sollten das als Antwort hinzufügen
cat | while read line; do ...; done, wissen Sie, dass für jede Iteration ein Wagenrücklauf vorhanden war. Wenn Ihre Eingabe Dateien mit\rohne sein kann\n, transformieren Sie die Datei einfach,tr '\r' '\n'während Sie die Eingabe verarbeiten. Wenn Sie nur wissen müssen, ob mehrere Zeilen vorhanden sind :wc -l.