開発環境
- Mac OS X Snow Leopard (OS)
- TextWrangler(Text Editor) (いずれはBBEditを入手したい!)
- Script言語:Perl
『続・初めてのPerl 改訂版』(Randal L. Schwartz, brian d foy, Tom Phoenix 著、伊藤 直也、田中 慎司、吉川 英興 監訳、株式会社ロングテール/長尾 高弘 訳、オライリー・ジャパン、2006年、ISBN4-87311-305-9) の8章(ファイルハンドルへのリファレンス), 8.6(練習問題)、1を解いてみる。
1.
コード(TextWrangler)
#!/usr/bin/perl use strict; use warnings; use IO::Tee; my $fh; my $scalar; print "出力先をFile, Scalar, Bothの" ."3種類から選択してください\n"; chomp(my $type=); if($type=~/^S/){ open $fh, ">", \$scalar; }elsif($type=~/^F/){ open $fh, ">", "castaways.out"; }elsif($type=~/^B/){ open my $scalar_fh, ">", \$scalar; open my $file_fh, ">", "castaways.out"; $fh=IO::Tee->new($scalar_fh, $file_fh); }else{ die "File, Scalar, Bothの3種類から選択してください\n"; } my $date=localtime; my $day=(localtime)[6]; if($day==0){ $day="Sun"; }elsif($day==1){ $day="Mon"; }elsif($day==2){ $day="Tue"; }elsif($day==3){ $day="Wed"; }elsif($day==4){ $day="Thu"; }elsif($day==5){ $day="Fri"; }else{ $day="Sat"; } print $fh "Date: $date\nDay: $day\n"; if($type=~/^[SB]/){ print STDOUT "Date: $date\nDay: $day\n"; }
入出力結果(Terminal)
出来上がったファイル、castaways.outの中身
こんな感じでいいのかな?とりあえず、出力結果は思った通りに。
0 コメント:
コメントを投稿