Ich leite die Ausgabe von URLWatch an eine Protokolldatei weiter und habe ein Problem, bei dem die Doppelpunkte im Zeitformat %T
unter OS X durch Schrägstriche ersetzt werden.
Datumsvariable:
DATEVAR='+%Y_%m_%d %T'
Dies ist die Crontab:
*/2 6-23 * * * /usr/local/bin/urlwatch | /usr/local/bin/ts '[\%b \%d \%H:\%M:\%S] -' > /Users/name/Library/Logs/Urlwatch/urlwatch\ "$(date "$DATEVAR").log"
Der Backslash danach /Urlwatch/urlwatch
dient zum Maskieren des folgenden Leerzeichens. Das Entfernen des Backslashs und die Verwendung eines Unterstrichs löst dieses Problem nicht. Das Ersetzen %H:%M:%S
von for %T
löst dieses Problem nicht.
Die Ausgabe:
urlwatch 2020_04_12 19/08/00.log
Beim Ausführen date
im Terminal erhalte ich:Sun Apr 12 19:23:59 CDT 2020
Und...
$ DATEVAR="+%Y_%m_%d %T"
$ echo | > /Users/name/Library/Logs/Urlwatch/urlwatch\ "$(date "$DATEVAR").log"
Gibt diese Datei aus:urlwatch 2020_04_12 19/26/01.log
Hinweise: ts
Ist eine nicht standardmäßige OSX-Binärdatei, die ich mit „Brew Install Moreutils“ installiert habe.