ジョブの開始時刻と日付を宣言するために変数を使用しますat
。これはうまくいきましたが、今度はatタスクを変数で指定された時間より早く実行するには、time変数から時間を減らす必要があることに気付きました(変数はatタスク内だけでなくスクリプトの他の場所でも使用されます)。
#variables
time=2:00pm
date=2018-1-16
#I need to subtract 4 hours from the time variable
at -f /home/JS/filename $time-4hours $date >attemp 2>&1
減算の結果、3番目の変数を導入するかどうかを考えましたが、それも不可能でした。
ベストアンサー1
私のDebianシステムでは:
$ echo true | at 2:00pm 2018-01-18 - 4 hours
warning: commands will be executed using /bin/sh
job 10 at Thu Jan 18 10:00:00 2018
time
したがって、適切な値が与えられたらdate
これがうまくいくはずです。
$ at -f ... $time $date - 4 hours
トークンの順序が少しトリッキーなので、順番にしなければならないようです。時間、日付、デルタ。たとえば、次は機能しません。
$ echo true | at 2:00pm - 4 hours 2018-01-18
syntax error. Last token seen: 2018-01-18
Garbled time