曜日のパリティに応じてファイル名を指定したい。端末では、以下が機能します。$(($(date +\%u)%2))
しかし、これはcronでは機能しません(数学式の評価が機能しないようです)。
cronでどのように機能させることができますか?
ベストアンサー1
他のパーセント記号ではなく、1パーセント記号をエスケープしました。
$(($(date +\%u)%2))
^
HERE
みんなcrontabエントリのパーセント記号は、%が特別な意味を持つため、エスケープする必要があります。 crontab(5) マンページ引用:
行の完全なコマンド部分(改行または%文字まで)は、/ bin / shまたはcrontabファイルのSHELL変数で指定されたシェルによって実行されます。バックスラッシュ()でエスケープしない限り、コマンドのパーセント記号(%)は改行文字に変更され、最初の%以降のすべてのデータは標準入力としてコマンドに送信されます。
もちろん、この段落の表現をよりよく書いたかもしれません。
したがって、次のようにする必要があります。
$(($(date +\%u)\%2))