いくつかの簡単なコマンドを実行するMac OS Xで/etc/crontabファイルを作成しました。 crontabを使用してオペレーティングシステムからログアウトするステートメントを端末にエコーし(マウスでLogoutコマンドを指すように)、2分ごとにechoステートメントを実行してテストしようとしています。これが私が今まで持っているものです:
55 12 * * * echo "Don't forget to log out!! Will be automatically logging out at 12PM Sharpe!!"
* 13 * * * logout
1 * * * * echo "Test"
その時点で、私はユーザーcrontab /etc/crontab
がcrontabファイル(そのファイル)を指していることを確認し、..と入力してそれを確認できましたcrontab -l
。ターミナルにエコーが鳴り、実際に毎日正午12時にOSがシャットダウンされるようにするにはどうすればよいですか?
答え1
実際の意図がシステムのアクティブユーザーを毎日1300時間にログアウトするようにすることである場合は、root
ユーザーのcrontabで次のことを試してください。
0 13 * * * osascript -e 'tell app "System Events" to log out'
ユーザーに確認ダイアログを表示したくない場合は、次のようにします。
0 13 * * * osascript -e 'tell app "System Events" to «event aevtrlgo»'
答え2
クローンテーブルエントリはいランニング。アクティブ端末では実行されず、それ自体で実行されます。ホストがローカルメールデーモンを実行している場合は、ローカルメールデーモンがローカルアカウントecho
に送信する電子メールに出力(ジョブなど)を含むcronジョブの出力を表示できます。
答え3
cron
しばらくOS Xでは、Jobsと呼ばれる「より良い」オプションを好む反発がありましたlaunchd
。タスクの実行方法に関するチュートリアルがたくさんありますが、launchd
ここでは始めるためのものです。
http://alvinalexander.com/mac-os-x/mac-osx-startup-crontab-launchd-jobs