Windows、Linux、Software全般又はWeblog等に関する愚痴っぽいMemo
PAPAパラダイス's Homepage: テキスト形式のサイトマップを設置
« 当サイトのデザインが崩れていた件について | Home | テキスト形式のサイトマップを設置 追記 »
金曜日, 2月 26, 2010
テキスト形式のサイトマップを設置
ウェブサイトにサイトマップを設置するとSEO効果が高まるというので、Windows
2000上で作成することにした。
NetDrive(FTPでマウントするソフトウェア)とsed(ストリームエディタ)と簡単なバッチファイルで、テキスト形式のサイトマップなら簡単にできそう。
まず、事前にNetDriveでiswebライトをZドライブにマウントし、作業用フォルダにc:\Tempを確保し、c:\Program
Files\sedにsedをインストールしてあるとする。
で、バッチファイルを作成。
@echo off dir z:\ /S /B | find /I ".html" > c:\Temp\html.txt dir z:\ /S /B | find /I ".shtml" > c:\Temp\shtml.txt copy c:\Temp\html.txt + c:\Temp\shtml.txt c:\Temp\join.txt c: cd c:\Program Files\sed sed -f isweb.sed c:\Temp\join.txt > c:\Temp\sitemap.txt copy c:\Temp\sitemap.txt z:\sitemap.txt
iswebライトでは静的生成のHTML形式でないと意味がないので、htmlファイルとshtmlファイルに決め打ちして検索結果を出力したら、両者を結合している。
次に、sedでの正規表現による置換については、c:\Program
Files\sed\isweb.sedをこんな感じで作成。
/^.*\\cgi-bin\\.*$/d s/index\.s*html$//g s/^z:/http:\/\/hiroyuki-papa\.hp\.infoseek\.co\.jp/g y/\\/\//
iswebライトではcgi-binディレクトリ以下が直接参照されないので、削除している。
さらに、index.htmlとindex.shtmlは明示しないほうがスマートなので、これらも削除。
最後に、URL形式に置換している。
ちなみに、Sed
LOGOS版ではs/index\.s*html$//gの正規表現で置換できたが、本当ならs/index\.s\?html$//gだと思うのだけれど、これが通らなかったから不思議。
この辺りがsedなのかなぁ。




