このブログの記事をメンテしているなかで、はてなキーワードへのリンクが目立ちました。
はてなブログの無料版は自動ではてなキーワードへのリンクがありまして、それは仕方ないです。しかし、記事そのものにはてなキーワードへのリンクがあるのです。
他の記事からエクスポートして、このブログにインポートしている記事があるので、それが悪さしていました。
この記事では、どのようにはてなキーワードを削除したかの手順を記録としてまとめています。
使用するツール
例によって、blogsyncを使用します。ブログの記事はローカルにPULLしている状態となっています。
手順
gitで管理
以下のようにgitで管理するようにファイルを全て登録します。gitで管理すると、間違えた変更をすぐにもとに戻せるというのが利点です。
# git init # git add .
文字列置換
以下のコマンドで文字列置換を行いました。
find ./ -type f -name \*.md | xargs perl -pe 's/<a class=\"keyword\" href=\"[^\"]+\">(.*?)<\/a>/$1/g;' -i
ポイントは、perlを使用していることです。当初はsedを使用しようと、試行錯誤しました。しかし、なかなか思うような結果が出ませんでした。
そこで、以下の記事を参考にperlで試したとこと、あっさりうまくいきました。また、sedで実施するより、perlの方が処理速度が早いと感じました。
また、ファイルの書き換えとなるオプション-i
は一番最後につけています。
差分比較
差分は160ぐらいありました。
git diffだと差分の量がが多くて比較しにくかったので、winmergeで比較しました。
catで全てのファイルを変更前と変更後の合計2回取得して、それをwinmergeで比較しました。
はてなブログの更新
更新したファイルだけをblogsyncでPUSHして、はてなブログを更新しました。
ほんとはcommitしてから更新が良いのですが、更新ファイルだけpushというのができないようなので。
git diff --name-only | xargs -n1 ./blogsync push
commit
比較して問題ないことを確認して、commitしました。
git commit -m 'remove hatena keyword'
- 作者: Randal L. Schwartz,brian d foy,Tom Phoenix,近藤嘉雪,嶋田健志
- 出版社/メーカー: オライリージャパン
- 発売日: 2018/01/20
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る