七行プログラミング (452レス)
七行プログラミング http://medaka.5ch.net/test/read.cgi/php/1036141603/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
182: nobodyさん [] 03/12/03 06:43 ID:4m1BwtbU >175 $p の指定に不具合あり。join忘れてた。 use CGI':all';use File::Find;$P=join'/',grep/^\D\w*$/,(@i=split'/',path_info);( $Y,$M,$D)=grep/^\d+$/,@i;find sub{($d,$m,$y)=(localtime($t=(stat)[9]))[3..5];!( !($Y&&$Y-$y-1900)&&!($M&&$M-$m-1)&&!($D&&$D-$d)&&/\.txt/&&(!$i[-1]||/^$i[-1]$/) )or$e{$File::Find::name}=$t},"./$P";put header,start_html;for(sort{$e{$b}<=>$e{ $a}}keys%e){open F,$_;s/^\.//;chomp($h=<F>);put h2(a{href,url.$_},$h),pre<F>,hr ;close F}put end_html; 若干仕様変更。 - カテゴリ名は /^\D\w*$/ - ファイルの指定は、PATH_INFO の末尾のみ有効。 - findの対象はカレントディレクトリ以下のみ。(絶対パス指定できるのは、流石にちょっと BTW,ファイルハンドルってスコープ抜けたら勝手にcloseされるんだっけ?perlって。 http://medaka.5ch.net/test/read.cgi/php/1036141603/182
183: nobodyさん [sage] 03/12/03 07:46 ID:??? >182 テスト不十分だった。訂正 > $i[-1]!~/\.txt$/||/^$i[-1]$/ http://medaka.5ch.net/test/read.cgi/php/1036141603/183
185: nobodyさん [sage] 03/12/03 20:55 ID:??? 7thread.cgi l10n for Japanese :) #!/usr/local/bin/perl use CGI":all";*i=*param;*x=*textfield;sub e{escapeHTML i pop}sub l{a{href,pop}, pop}chdir G;-e($b=i(B)||e S)||open F,">$b";open F,"+<$b";eval{flock F,2};[<F>]; s!\w+://.+$!l$&,$&!eg,s/\n/br/eg,print F dt($.+1,':'.b(l e(N)||'ナナシ','mailto:'. e M),':'.localtime),dd($_),"\n"if$_=e T;seek F,0,0;put header(-charset=>$c= Shift_JIS),start_html(-title=>$b||$0,encoding,$c,lang,ja),startform,$b?h1($b). dl(<F>).hidden(B,$b).l 'スレ','?':ol(li[map{l$_,"?B=$_"}sort{-M$a<=>-M$b}<*>]).'ス レ'.x(S),br,submit,Name,x(N),Mail,x(M),br,textarea(T,'',6,80,1),endform,end_html >>182 検証方法が思いつかず…。>スコープ抜けで close http://medaka.5ch.net/test/read.cgi/php/1036141603/185
186: nobodyさん [sage] 03/12/03 23:13 ID:??? 7blosxom.cgi l10n for Japanese start_html に -title=>$0 入れると7行に収まらなかった(苦)。 #!/usr/bin/perl use CGI':all';use File::Find;($Y,$M,$D)=grep/^\d+$/,@i=path_info=~m|/([^/]+)|g; $R=$i[-1]=~/\.txt$/?pop@i:'\.txt';find sub{($d,$m,$y)=(localtime($t=(stat)[9])) [3..5];$e{$File::Find::name}=$t if!($Y&&$Y-$y-1900)&!($M&&$M-$m-1)&!($D&&$D-$d) &/$R$/},$P=join('/','.',grep!/\.\.|^\d+$/,@i);put header(-charset=>$c='EUC-JP') ,start_html(-encoding=>$c,lang,ja);for(sort{$e{$b}<=>$e{$a}}keys%e){open F,$_; s/^\.//;chomp($h=<F>);put h2(a{href,url.$_},$h),pre<F>,hr}put end_html >>182 '..' さえ防いだら大丈夫な気も… 既に開かれてるファイルハンドルを open し直すと、開いていたファイルは close されてから新しいファイルを open するので、close は明示しなくても 可な筈。 http://perldoc.com/perl5.8.0/pod/func/close.html http://medaka.5ch.net/test/read.cgi/php/1036141603/186
233: 7blosxom [sage] 04/01/19 14:33 ID:??? http://cm.xrea.cc/prog/7blosxom.shtml 仕様は >>182 辺りに。 テストファイル生成スクリプトも更新。 @c=('a'..'z','A'..'F');$t=time;$i=24;sub u{$t-=9**5;utime$t,$t,pop}sub j{join"" ,@c[$_[0]..$_[0]+2]}while($i){open(T,'>'.($f=j(--$i).'.txt'))||die$!;print T j( $i),"\n",j($i+3),"\n",j($i+6);close T;$t-=8**7if$i==13;u($f)||die$!}@f=sort <*.txt>;$t=(stat$f[0])[9]-9**7;for(@f){open(S,$_)||die$!;s/(\w+)/uc($1).++$i/e; open(D,">$_")||die$!;print D map uc,<S>;close D;u($_)||die$!} http://medaka.5ch.net/test/read.cgi/php/1036141603/233
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
アボンOFF
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.021s