#! /bin/perl # # 書式 # perl check-geoext.pl # # 機能 # geocities でサポートされない拡張子をもつファイルを見つける # # 説明 # check-geoext.pl は標準入力から1行パス名の形式のを読みとり # サポートされない拡張子を持つものを標準出力に出力します。 # # 例 # カレントディレクトリ以下でgeocities でサポートされない拡張 # 子をもつファイルを見つける。 # # find . -type f | perl check-geoext.pl # # http://www.geocities.co.jp/help/help_filetype.html より $a = <<"EOS"; 圧縮ファイル .lzh .zip .gz .ps .tgz イメージマップ .map 音声ファイル .aiff .au .wav .wrk 画像ファイル .bmp .jpg .gif .tif .tiff .png ビデオ .ivs ビデオファイル .mov .avi 文字 .txt Cascading Style Sheets .css E-cash .cnf FutureSplash .cab .spi Gedcom .ged HTML .html .htm Java .class Javaスクリプト .js Javaソース .java Mac BinHex 4.0 .hqx MIDI (Crescendo) .mid .key MPEG3 .mp3 MSワード .doc PDFファイル .pdf QuickTime .qt .mov RealAudioファイル (ストリームなし) .ra .ram Shockwaveファイル .dcr .dir .dxr .swf StuffIt .sit TrueSpeech .tsp Vivo .viv .vivo Voxware .vox VRML .wrl SoundVQ .vqf .vql .vqe Windows Media .asf .asx EOS $a =~ tr/ //d; # print $a; foreach (split( ' ', $a )){ push( ext, $_ ) if( /^\./); } #print STDERR @ext; while(<>){ chop; $path = $_; ($ext) = /(\.[^.]+)$/; if( grep( /$ext/, @ext )){ } else{ print "$path\n"; } }