crontab の日付と時刻の形式では、コロンの代わりにスラッシュを区切り文字として時刻を出力します。

crontab の日付と時刻の形式では、コロンの代わりにスラッシュを区切り文字として時刻を出力します。

%Turlwatch の出力をログ ファイルにパイプしていますが、 OS X で時間形式のコロンがスラッシュに置き換えられるという問題が発生しています。

日付変数:

DATEVAR='+%Y_%m_%d %T'

これは 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"

後ろのバックスラッシュは、/Urlwatch/urlwatch後続のスペースをエスケープするためのものです。それを削除してアンダースコアを使用しても、この問題は解決されません。 を交換して%H:%M:%Sも、%Tこの問題は解決されません。

出力:

urlwatch 2020_04_12 19/08/00.log

dateターミナルで実行すると次のようになります:Sun Apr 12 19:23:59 CDT 2020

そして...

$ DATEVAR="+%Y_%m_%d %T"
$ echo | > /Users/name/Library/Logs/Urlwatch/urlwatch\ "$(date "$DATEVAR").log"

次のファイルを出力します:urlwatch 2020_04_12 19/26/01.log

注: これは、 tsbrew install moreutils を使用してインストールした非標準の OSX バイナリです。

関連情報