やりたい事
MacBookの蓋を閉じるとスリープ状態になりNASの接続が切れてしまう。
切れてもいいが、蓋を開けてスリープから戻ったらNASの接続も戻って欲しい。
スリープが解除されたら何かコマンドを実行できないか。という仕掛けを考えたという投稿です。
コード
sleepWatcher.pl
#!/usr/bin/perl
################################################################################
# sleepWatcher.pl
# pmset ログ出力を読み取り、スリープからの復帰を処理する。
################################################################################
use strict;
use warnings;
STDOUT->autoflush(1);
################################################################################
# pmset -g pslog を読み取りオープン
################################################################################
my $fh;
my $rec;
open $fh, "pmset -g pslog |";
while( $rec = <$fh> ) {
chomp($rec);
if( $rec =~ /HasPoweredOn/ ) {
#
# スリープ状態が解除された時の処理
#
`say -v ava -a "MacBook" "Good morning \`whoami\`"`;
}elsif( $rec =~ /Sleeping/ ) {
#
# スリープ状態に移行した時の処理
#
}
}
close $fh; # 到達することはないけれども
Mac起動時に自動実行させておく
$ crontab -e
@reboot 配置パス/sleepWatcher.pl