サービス管理コマンド 「launchctl」
-
サービス開始
-
サービス停止
-
サービスリロード
コマンド
launchctl
オプション
オプション | 説明 |
---|---|
start | サービス開始 |
stop | サービス停止 |
list | サービス有効なものを確認 |
load | サービス有効 |
unload | サービス無効 |
⚠️ エラーが起きた時などplist変更加えた後はunloadしてloadする
ファイルを置き場
~/Library/LaunchAgents/
plist
-
dictionayのkey-valueで構成
-
Label: plist このファイル名
-
ProgramArguments: [スクリプトフルパス
] -
StartCalendarInterval: {Hour: 時間
} {Minute: 分 } -
StandardOutPath: /tmp/<ファイル名>.log
# ログ -
StandardErrorPath: /tmp/<ファイル名>.error
# エラーログ -
RunAtLoad: true
サンプル
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.<ユーザー名>.<ファイル名></string>
<key>ProgramArguments</key>
<array>
<string>/Users/<ユーザー名>/scripts/<スクリプト名>.sh</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>18</integer>
<key>Minute</key>
<integer>0</integer>
</dict>
<key>StandardOutPath</key>
<string>/tmp/<ファイル名>.log</string>
<key>StandardErrorPath</key>
<string>/tmp/<ファイル名>.error</string>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>