読者です 読者をやめる 読者になる 読者になる

久々にバッチファイル書いた

PC

今新しくページを作成中。
共通メニュー+コンテンツ(ブログ的な)形式にしようとし、手でhtmlとcssを書いた。
最初はまとめて作っていたが、メニューを更新すると全部書き換えるのがものすごく面倒な事に気づいて、分離して作って適当にバッチファイルで結合することにした。

cd ..\
rd www2 /s /q
md www2
cd www2
set WW2=%CD%
xcopy ..\www /I /E /Y

for /r %%i in ("*.html") do  (
  copy /b "%WW2%\menu.txt"+"%%~fi" "%%~fi_"
  del "%%~fi"
  ren "%%~fi_" "%%~ni.html"
)

del genhtml.bat menu.txt
::PAUSE


コアな構成要素

.\
.\www
.\www\genhtml.bat
.\www\menu.txt
.\www\*.html
.\www2

wwwがコンテンツディレクトリ、genhtml.batが結合用バッチファイル、menu.txtがメニュー用ファイル、*.htmlはメニュー以外の内容。
www2はコピー先ディレクトリ、完成品がこっちに入る。


ヘッダー等+メニューを作って、

<!DOCTYPE html PUBLIC "-//W3C//dtD html 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet" type="text/css" href="main.css">
</head>
<body>
<div class="banner">banner</div>
<div class="menu"><div class="box">
<dl>
  <dt>メニュー<dd>
  <div class="side"><A href="index.html">トップページ</A></div><dd>
  <div class="side"><A href="info.html">情報</A></div><dd>
  <div class="side"><A href="diary.html">日記</A></div><dd>
  <div class="side"><A href="link.html">リンク</A></div>
</dl>
</div></div>
<hr />


内容+フッターと分ける。

<p class="pos"><A href="index.html">TOP</a> > R</p>
<hr />
<p class="title">xxxx/xx/xx under construction</p>
<div class="text">
under construction
</div>
<hr />
<p class="copy">copyright.</p>
</body>
</html>

フッタも複雑化したら3分割してもいいかな。