2011-02-11から1日間の記事一覧

俺とPHP 24時間でとある企業のサラリーマンとOLたちが知恵をあわせて社会貢献ゲームを企画してみた顛末 - Keep Crazy;shi3zの日記

配列から一部の要素を覗いた配列を作る

use strict; use warnings; my @aaa = qw/ a123 b123 c123 /; my @bbb = grep {$_ ne "a123"} @aaa; printf "%s\n", join ",", @aaa; printf "%s\n", join ",", @bbb; __END__ a123,b123,c123 b123,c123

List::MoreUtilsのapplyを調べてみた

List::MoreUtilは配列操作の便利な関数をまとめたモジュールでそこに apply というサブルーチンがある。docより使い方は以下の通り。 つまり第一引数にサブルーチン、残りに配列を渡すとその配列に対してサブルーチンを適用してその結果を返してくれる。map…

してはいけない書き方

配列に対してdeleteを使う 要素は消えないし、perl-5.12.1 のperldoc perlfunc より”非推奨” use strict; use warnings; my @list = qw( a b c d e ); delete($list[1]); print "@list\n"; __END__ Use of uninitialized value in join or string at a.pl li…

Python subprocess - karasuyamatenguの日記

udpサーバーでtracerouteの送信文字を見る

tcpならtelnetでポート指定すればいいけど、udpをポート指定して簡単に送れるコマンドがないか探してたらtracerouteがあった use strict; use warnings; use IO::Socket::INET; my $s = IO::Socket::INET->new( LocalAddr => "0.0.0.0", LocalPort => 9000, …

aaaを送ったら終わるサーバー

telnet localhost 9000 use strict; use warnings; use IO::Socket::INET; my $s = IO::Socket::INET->new( #LocalAddr => "localhost", LocalAddr => "0.0.0.0", LocalPort => 9000, ReuseAddr => 1, ) or die $!; $s->listen or die $!; while (my $c = $s…

Address already in useを回避する

Address already in useを起こしてみる 以下のサーバースクリプトを起動 telnet localhost 9000としてアクセスする 待ち受け状態になるので適当な文字を入れてEnter コネクションが切れる。 サーバースクリプトをCtrl+Cで落とす。 再度起動しようとすると Ad…