Be Silent! 〜 ミニサーバ日記 〜 38. md5sumの結果表示を編集して簡略化するようにした


 第31話で作った、毎日の追加・更新・削除の内容を 教えてくれるスクリプト。その出力結果はこんな感じだった。

1c1
< 174d3eeecf8ddd38815f23d8131447f4  backup-cassava
---
> 5dbea090a04bd1edcc729f325a47367c  backup-cassava
 これは更新があった場合。 これが、削除された場合は、つぎのような表示になる。
1d0
< 174d3eeecf8ddd38815f23d8131447f4  backup-cassava
 新たに追加された場合は、こんな感じ。
0a1
> 5dbea090a04bd1edcc729f325a47367c  backup-cassava
 もうひとつ、移動された場合はこう。
1c1
< 174d3eeecf8ddd38815f23d8131447f4  backup-cassava
---
> 174d3eeecf8ddd38815f23d8131447f4  foo/backup-cassava
 正直読みづらい。(^_^;

 はいそこで、例によってスクリプトを書くぜ(^_^;
 上の読みづらい結果を処理して、読みやすーい形式で書き出すスクリプトを作るのだ。 さすがにちょっと、シェルスクリプトではややこしそうなので、 最近覚えたての、perlでやってみた。

 その結果、例えば更新があった場合は、こんな風になる。

==> *changed* <==
* backup-cassava
 backup-cassavaに更新があった、これだけ。行頭の * が更新を意味する。
 追加された場合はこう。こんどは + が追加を表す。違和感はないと思う。
==> +added+ <==
+ backup-cassava
 同じく削除はこう。
==> -deleted- <==
- backup-cassava
 そして、移動された場合はこうなるようにしてみた。
==> =moved= <==
= foo/backup-cassava <- *
 * というのは、「移動先と同じ」という意味で、 ファイル名の部分には変更がないことを表す。 こうしないと、1行がとてーも長くなってしまうのだ。 (でもこのシカケ作るのとっても苦労した)


トップ もどる