はじめに
どうもこんにちは。
先日会社の人と街コンと言われる恋活パーティーに参加してきました。
初めてのコンパ + 最近在宅ワークで人と関わる機会がなかったので、ワクワクドキドキ。
いい出会いがあるのではと、微かな希望を持って臨みました。
結果は、、、
負け....
連絡先は交換できたものの、次に繋がる出会いは得られず・・・
くぅぅぅ。。。
パーティー自体は楽しかったのでよかったのですが、悔しさが残る初戦でした(また行くのかよ)
誰かにお疲れさまですと言って欲しいだけなのに。その道のりは長そうです。
いつ彼女は作れるのやら、、、
・
・
・
ん、彼女を作る・・・?
そこで私は閃きました。
(彼女が)作れないなら、(プログラムを)作ればいいんだ!
まさに逆転の発想。灯台下暗し。
このためにエンジニアになったのだと思わせるほどの衝撃でした。
ということで今回は、
1時間おきに彼女(仮想)に「お疲れさまです」と言われる定期実行
を作っていきたいと思います。
実現方法
定期実行はcronを使用することで実現できます。
cronとは
簡単にいうと
「指示した時間に指定したプログラムを動かしてくれるやつ」
です。
UNIX系のOS(Linuxとか)に入っているプログラムのひとつであり
定期的に設定した処理を自動で実行してくれます。
- メルマガ配信
- 月間の売上の集計
- バックアップ
- たまったゴミファイルを削除する
などを実行したい際に使われます。
cronの設定方法
cronに対して「いついつに、このプログラムを動かせ」と指示をするときは
crontab
というコマンドを使います。
crontabコマンドは以下です。
# cron設定の編集・登録
crontab -e
# cron設定の表示
crontab -l
オプションは他にもありますが、最低限ここを押さえておけばいいでしょう。
crontab -e
でcronを開いたあとは、vim
を使って記述します。
vim
の使い方がわからない方は下記を参考ください!
cronの書き方
実行時間は、分、時、日、月、曜日を指定します。
#初期状態
* * * * * (コマンド)
# 指定の順番は以下
分 時 日 月 曜日 (コマンド)
初期状態「* * * * *」では毎分ごとにコマンドが実行されます。
「 * 」と「 * 」の間は半角スペース分空けてください。
設定例
# 毎月1日の午前9時30日分にコマンドを実行する場合
30 09 1 * * (コマンド)
# 毎週月曜日の午前9時30分にコマンドを実行する場合
30 09 * * 1 (コマンド)
# 毎時0分に1時間おきにコマンドを実行する場合
* */1 * * * (コマンド)
補足
-
曜日
:0〜7で設定。0=日曜,1=月曜,2=火曜,3=水曜,4=木曜,5=金曜,6=土曜,7=日曜 -
/
:分,時,日を間隔で指定
1時間おきに彼女(仮想)にお疲れさまですと言われるには
皆さんお待たせしました。
ここから
「1時間おきに彼女(仮想)にお疲れさまですと言われる」処理を
cronを使って定期実行設定していきます。
ファイル構造
- /Users/username/Documents/batch_cron
- otukareVoice.sh
- audio
- otukaresamadesu.mp3
実行処理(シェルスクリプト)
#!/bin/sh
afplay /Users/username/Documents/batch_cron/audio/otukaresamadesu.mp3
osascript -e 'display notification "あと6時間はいける♫" with title "今日もお疲れ様です。" sound name "Submarine"'
今回はotukareVoice.shというシェルスクリプトファイルを作成し処理を記述。
優しいお姉さんが「お疲れさまです」といってくれる音声(otukaresamadesu.mp3)をダウンロードしました笑
興味のある方は下記のリンクから聞いてみてください笑
補足
afplay
:音楽再生コマンド
osascript -e
:macで横から通知をしてくれるスクリプト
/dev/null 2>&1
:下記の記事を参照ください。
cronの設定
# 1時間おきにotukareVoice.shを実行する
0 /1 * * * sh /Users/toyodakengo/Documents/batch_cron/otukareVoice.sh > /dev/null 2>&1
動作確認
1時間おきに彼女(仮想)が「お疲れさまです」という声と共に
「あと6時間はいける」と煽ってくる定期実行が完成しました♫
これで仕事が捗ること間違いなしですね!
最後に
今回は1時間おきに彼女(仮想)が「お疲れさまです」と言ってくれる定期実行を作りました。
これで在宅ワークでも寂しいことはありません。
世のエンジニアさんは、彼女を作る前にまず定期実行を作ってみてはいかがでしょうか。
虚しさが募り本気で彼女を作る気になりますよ!
ではまた〜!