コマンドを使用してat
、将来のジョブをスケジュールしています。
DoCurlAt () {
if [ -n "${AuthToken:-}" ] ; then
$4 << 'EOF'
curl -s -H "${AuthHeader:-}" -H "$1" --data-urlencode "$2" "$3"
EOF
Exitcode=$?
fi
WriteLog Output Info "AT Output: $AtOutput Exitcode: $Exitcode"
}
$AtOutput という変数で at の結果をキャプチャするにはどうすればよいですか?
で試しました
AtOutput=$(bash $4 << EOF
curl -s -H "${AuthHeader:-}" -H "$1" --data-urlencode "$2" "$3"
EOF
)
しかし、それは実際には何の結果ももたらしません。
また試してみました:
AtOutput=$(curl -s -H "${AuthHeader:-}" -H "$1" --data-urlencode "$2" "$3" | at "$4")
しかし、HERE-doc を使用したいと思います。関数は次のように呼び出されます
DoCurlAt "$AcceptJson" "argString=$ArgString" "$ApiUrl/$ApiVersion/job/$JobUid/run" "$OneTime"
$OneTime ($4) は、たとえば "at 15:19 today" のようになります。出力はほとんど次のようになります。
job 7 at 2016-08-16 15:30