-->
./
<!-- フラ&#65533;ュが見れな&#65533;のためにここに何か書&#65533; --> フラ&#65533;ュがインス&#65533;&#65533;ルされて&#65533;&#65533;たいで&#65533;&#65533;&#65533;

2009年10月13日

sedコマンドを使ったHTMLファイルの編集

<span style="color: #808080; font-style: italic;">#org-modeか らhtmlエクスポートされた
</span><span style="color: #808080; font-style: italic;">#htmlファイルをmapaeの 記事投稿用に加工する。
</span><span style="color: #cc66cc;">1</span>,/<\/head><body>/d
s/<\/body>//g
s/<\/html>//g
/Table of Contents/s/<h2>\<span style="color: #66cc66;">(</span>.*\<span style="color: #66cc66;">)</span><\/h2>/<div <span style="color: #0000ff;">style=</span><span style="color: #ff0000;">"color: red;"</span>>\<span style="color: #cc66cc;">1</span><\/div>/
s/<h2 /<h2 <span style="color: #0000ff;">class=</span><span style="color: #ff0000;">"hh"</span> /g
s/<h3 /<h3 <span style="color: #0000ff;">class=</span><span style="color: #ff0000;">"hh"</span> /g
s/<h4 /<h4 <span style="color: #0000ff;">class=</span><span style="color: #ff0000;">"hh"</span> /g
s/<h5 /<h5 <span style="color: #0000ff;">class=</span><span style="color: #ff0000;">"hh"</span> /g
 
 
dp.SyntaxHighlighterを使うと次のようにエラーが出る。他にも試したがダメ。
#org-modeからhtmlエクスポートされた
#htmlファイルをmapaeの記事投稿用に加工する。
1,/<\/head><body>/d
s/<\/body>//g
s/<\/html>//g
/Table of Contents/s/<h2>\(.*\)<\/h2>/<div style="color: red;">\1<\/div>/
s/<h2 /<h2 class="hh" /g
s/<h3 /<h3 class="hh" /g
s/<h4 /<h4 class="hh" /g
s/<h5 /<h5 class="hh" /g
 どうもタグの括弧が対になっていないのがいけないみたいです。
<h2 <span style="color: #0000ff;">id=</span><span style="color: #ff0000;">"sec-3"</span>>
 
 
のような部分を処理するので、閉じ括弧を変換対象に含めると正規表現が複雑になりそうです。なんとか出来そうですが、他のことで疲れてしまってやる気も起こりません。これも一つ勉強になりました。
使い方
 ファイルに名前を付けて保存
 sed -f 保存したファイル名 変換対象のファイル名
例:
sed -f saisinn/cocolog-css saisinn/kokuso-tex.html

注意点  sedコマンドは処理結果を端末に表示するだけなので、結果を残して使用したい場合は、リダイレクトで別ファイルとして保存。

 スクリプトをファイルとして保存せず、シェルから直接実行する場合は、特殊文字のエスケープが沢山必要になるので大変。


Powered by ScribeFire.

この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/32893655

この記事へのトラックバック