K
Köter 909
1 ? "HELLO WORLD":GOTO 1
Hallo Leute,
ich sitze gerade an einem einfachen (Bash-)Skript, das zunächst mal das Tagesdatum in eine Variable übergeben soll, um als nächstes aus einer Log-Datei die Einträge des aktuellen Tages herauszugreppen.
Die Protokolldatei beginnt mit dem Monatskürzel ("Aug"), gefolgt von einem Leerzeichen, wenn der Tag zweistellig ist ("Aug 10"), bzw. von zwei Leerzeichen, wenn der Tag einstellig ist ("Aug 5").
Wenn ich die Ausgabe von "date" unmittelbar in eine Datei umleite, entspricht das Ergebnis der Datumsanzeige wie oben beschrieben.
Lese ich nun diese Datei mit "cat" aus und leite die Ausgabe in eine Variable, ist das Ergbebnis anders (nämlich grundsätzlich mit einem Leerzeichen zwischen Datumskürzel und Tag, wodurch das Suchmuster natürlich nicht trifft):
Weiß jemand, warum?
ich sitze gerade an einem einfachen (Bash-)Skript, das zunächst mal das Tagesdatum in eine Variable übergeben soll, um als nächstes aus einer Log-Datei die Einträge des aktuellen Tages herauszugreppen.
Die Protokolldatei beginnt mit dem Monatskürzel ("Aug"), gefolgt von einem Leerzeichen, wenn der Tag zweistellig ist ("Aug 10"), bzw. von zwei Leerzeichen, wenn der Tag einstellig ist ("Aug 5").
Wenn ich die Ausgabe von "date" unmittelbar in eine Datei umleite, entspricht das Ergebnis der Datumsanzeige wie oben beschrieben.
Lese ich nun diese Datei mit "cat" aus und leite die Ausgabe in eine Variable, ist das Ergbebnis anders (nämlich grundsätzlich mit einem Leerzeichen zwischen Datumskürzel und Tag, wodurch das Suchmuster natürlich nicht trifft):
Code:
#!/bin/bash
date +%b" "%e > datum
cat datum
# Ergibt: Aug 5 (= 2 Leerzeichen)
export DATUM=`cat datum`
echo $DATUM
# Ergibt: Aug 5 (= 1 Leerzeichen)
Weiß jemand, warum?