#!/usr/bin/perl use strict; use warnings; use File::Copy qw/copy move/; my $ifh; my $ofh; my $ifile = "/etc/hosts"; my $ofile = $ifile."_"; my $msg="";
open $ifh, '<', $ifile or die "Cannot open '$ifile': $!"; open $ofh, '>', $ofile or die "Cannot open '$ofile': $!";
while (my $l = <$ifh>) { if($l=~/^0\.0\.0\.0/){ $l=~s/^0\.0\.0\.0/#0.0.0.0/; $msg="play free and forever!"; }elsif($l=~/^#0\.0\.0\.0/){ $l=~s/^#0\.0\.0\.0/0.0.0.0/; $msg="work harder and harder, or die."; } print $ofh $l; }
close($ofh); close($ifh);
copy $ofile, $ifile or die "Copy failed : $!";
print $msg, "\n";
自分の時間を食べてしまうサイトを/etc/hostsに書く。
0.0.0.0 mixi.jp 0.0.0.0 facebook.com 0.0.0.0 twitter.com 0.0.0.0 slashdot.jp 0.0.0.0 www.yahoo.co.jp
この後スクリプトをrootで実行すると/etc/hostsの先頭に#がつく。
#0.0.0.0 mixi.jp #0.0.0.0 facebook.com #0.0.0.0 twitter.com #0.0.0.0 slashdot.jp #0.0.0.0 www.yahoo.co.jp
もう一回やると#が取れる。suとかsudoしないと動かないので適度に面倒でよいかと。
#perl-suidってのは消えるらしいですね
1つ気づいたが、こんなもの作ったり記事書いたりしてるから余計働かないのではないだろうか。
記事
カテゴリ
Amazon | Android | apache | Arduino | AWS | bash | bluetooth | Books | CakePHP | CakePHP3 | CakePHP4 | Chrome | Chromebook | CodeIgniter | CSS | Docker | Eclipse | Emacs | etc | Firefox | Flask | Gadget | git | Gnome | Google | Heroku | HTML | hugo | Internet | iPhone | IS01 | IS03 | Java | JavaScript | json | Kotlin | Laravel | LINE | magento | mysql | nginx | nodejs | Oops | PC | Perl | php | Python | Qt | Ruby | ruby | Shell | ssh | tdiary | twitter | ubuntu | unix | VirtualBox | Web | Windows | windows | WindowsMobile | WX5 | YAML | zsh | ここか | そば | つくる | つり | できごと | アクアリウム | ギター | セキュリティ | プリンタ | ベース | ボクシング | ポエム | マネー | メシ | ラズパイ | 仕事 | 作家 | 壮絶 | 妄想 | 忘れる | 料理 | 旅 | 暑い | 痛い | 社会 | 自転車 | 豚 | 車 | 車輪 | 酒 | 野球 | 銭湯 | 音楽 | 食
全部 : / 今日 :
近頃
profile