[mac]atコマンドが実行されない場合の対処法
cronの代わりにatコマンドを使ってみようと思いmacで試したのですが、指定時間になっても実行されないことにハマったのでメモ。
- 以下のコマンドを実行後、指定時間まで待機
# 2014/09/20 20:00 に ~/test_command を実行
(日付は HH:mm DD.MM.YY 形式で指定)
at -f ~/test_command "22:00 20.09.14"
- atqを実行したところ、指定時刻を超えたあともキューに残ったまま…
# atコマンドの未実行キューを確認
atq
11 Sat Sep 20 22:00:00 2014
もちろんコマンドは実行されていません。
どうやらmacのデフォルトではatコマンドの実行は無効設定になっているようです。
- 以下を実行してatコマンドを有効化
sudo launchctl unload -F /System/Library/LaunchDaemons/com.apple.atrun.plist
sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.atrun.plist
その後、再度試したらうまく実行されました。
atコマンドは日付の指定に少し戸惑いますね。