Perl

auのデバイスIDから機種名を結びつけるハッシュを作るスクリプト

auのデバイスIDから機種名を調べようと思ったら http://www.au.kddi.com/ezfactory/tec/spec/4_4.html ここにある対応表を利用することになると思うのぢゃが、毎回調べるのも面倒ですな。そこでこのページから デバイスID=>機種名 という形でハッシュデータ…

@INCにパスを通す方法

◆シェルで設定export PERL5LIB=/home/xxxxx/home/xxxxx にパスが通る。 .bashrcやらに設定しておけば便利ぢゃ。◆実行時に指定 perl -I/home/xxxxx gosshujin.pl実行時、/home/xxxxxにパスが通るぞい。

md5値を出力

とある文字列のmd5値を出力する方法ぢゃ。 以下コマンドプロンプトまたはシェルで実行すればおけ。 Digest::MD5がインストールされている事前提ぢゃが。 perl -MDigest::MD5 -e "print(Digest::MD5::md5_hex('xxxxx'));"

Archive::Zipでzipファイルを一括解凍

アーカイバはLhazを使っとるのぢゃが、zipファイルが複数ある場合、一括解凍できんので、カレントディレクトリにあるzipファイルを一括で解凍するPerlスクリプトを作ってみたぞぃ。 #!/usr/bin/perl -w use strict; use Archive::Zip; my @files = (); my $z…

GD::Graphで円グラフ作成

GD::Graphを使って2つの要素を1:99〜99:1までの割合を表示する円グラフを作成するプログラムを作ってみたぞぃ。 #!/usr/bin/perl -w use strict; use warnings; use GD::Graph::pie; my $img_dir = './img'; mkdir($img_dir); for my $i (1..99) { my @data …

アルファベットAからZまでを配列に代入

A〜Zまでを配列の1要素として代入ぢゃ。 my @alfabet = ('A' .. 'Z'); AA〜ZZまでだったらこんなんもできるみたいですな。 my @alfabet = ('AA' .. 'ZZ'); 組み合わせ作るときとかに便利そうですな。

mod_perl環境でuse encoding

してるcgiがあると、cgiでページ出力している箇所で文字化けするという現象が発生しますな。apacheのプロセスにuse encodingした影響が残るんじゃろうな。気をつけんとな。

CGI.pmでリダイレクト

最近物忘れが激しくなったのぅ。思いだせんかったのでメモ。 my $cgi = CGI->new(); my $cookie = CGI::Cookie->new( -name => 'xxxxx', -value => 'xxxxx', -expires => '+7d', ); $cgi->redirect( -url => '/xxxxx.html', -cookie => $cookie, );

メールアドレスのリストから携帯メールアドレスを抽出

メールアドレス一覧から、携帯メールアドレスを抽出する処理をPerlで書いてみた。 #!/usr/bin/perl -w use strict; use warnings; sub write_file { my $filename = shift(); my $data = shift(); open(FH, "> $filename") or die("$! -> $filename"); print…

数字を三桁ずつカンマで区切るメモ

価格などの数値を表示する場合によく使う処理ですな。 my $str = "-111111111111.1111"; sub commify { my $text = reverse($_[0]); $text =~ s/(\d{3})(?=\d)(?!\d*\.)/$1,/g; return scalar(reverse($text)); } print(commify($str));

メールアドレスをドメイン毎に分けてソート

沢山のメールアドレスを、ドメイン毎にソートしたい場合の処理をPerlで書いてみた。 #!/usr/bin/perl -w use strict; use warnings; my @maddr_list = ( 'bbb@ezweb.ne.jp', 'aaa@yahoo.co.jp', 'bbb@yahoo.co.jp', 'ccc@gmail.com', 'bbb@softbank.ne.jp', …

アクセサを作るCPANモジュール比較

Class::Accessor::Fast make_accessor make_ro_accessor make_wo_accessor Class::Data::Accessor mk_classaccessor mk_classaccessors Class::Data::Inheritable mk_classdata

変数の中身を表示する方法の比較

Perl use Data::Dumper; my %data = ( 'key1' => [1,2,3,4,5], 'key2' => [6,7,8,9,10], ); print(Dumper(\%data)); PHP array(1,2,3,4,5), 'key2'=>array(6,7,8,9,10), ); print_r($data); ?> JavaScript var data = { 'key1':[1,2,3,4,5], 'key2':[6,7,8,9…

mod_perlのステータス確認について

mod_perlのステータス確認するURLを長いことど忘れしておったのぢゃ。なので忘れんようにここに記しておくとしよう。http://xxxxx.com/perl-status/

mod_perlで動かすcgiでソースコードをUTF8で保存する時BOM付けると・・・

ソースコードをUTF8で保存する時BOM付けるとmod_perlでバグるようじゃな。 なのでUTF8にするときはBOM無しにするように気をつけんとな。 http://translate.google.co.jp/translate?hl=ja&sl=en&u=http://perl.apache.org/docs/2.0/user/troubleshooting/trou…

32bit環境と64bit環境でのメモリ使用量はほぼ倍になるのね。

まぁ当然っちゃ当然なのかのー。32bit環境 $ perl module_size.pl CGI 780KB64bit環境 $ perl module_size.pl CGI 1.3MBhttpdのメモリ使用量とサーバのメモリ容量を考慮して max clientとか設定しないとアクセス集中した場合は自滅するのぅ。というか自滅し…