grep置換について

1515 letters | 816 views | コメントする

先日、よその某団体のサイトが置かれてあるサーバーが攻撃を受けてダウンした。
どうしようもなくなって、結局旧ホームページは捨てて、新しいアドレスにホームページを移転した。
その作業を手伝ったのだが、旧ホームーページに置いてあったHTMLファイルを全部検索して、
旧アドレスを新アドレスに全て置換するという場面が発生した。

ということで、grepに置換機能まで実装すれば便利になるという話は多いに伝わる。
その機能は欲しいし、欲しい機能は本人のやる気次第では実装するだろう。

問題は、「便利に」実装できるかどうかなんだな。
機能を詰め込むだけなら簡単だが、便利な実装にすると言うのは意外に難しい。
その、やるとしたらどうやるかっていうハードルがあるので、それを超えなきゃいけない。

例えば、あたしはバックアップファイルが大嫌いだ。
必要なファイルのバックアップは自分でやるから、アプリに勝手にバックアップされたくない。
ゆえに真魚にも、編集したファイルを勝手にバックアップする機能はない。
でも、バックアップなしにgrepで一気に置換する機能って、リスクが大きすぎる気がするんだよ。
かといって、大量のファイルを置換する際に、大量のバックアップを作られるのは絶対に許せない。
まずはこの辺をどうするか。

次に、これも置換時のリスクの問題だが、ユーザーが要求した操作に対して、確認が必要かどうか。
テキストエディタにファイルを全て読み込んで、置換箇所を目で確認して置換するのではなく、
自動で全部を一気に置換するから便利なのだが、逆にどこを置換したかもわからなくなりそう。
で、予想外の所も置換されて、そのことにも気がつかず、バックアップもないとかになっちゃうかも知れない。

だからといって、リスクを回避するために、いろんな項目を追加したり、余計な確認を出すことで、
その機能が必要ではないユーザーにとっては、かえって混乱を招くことにもなりかねない。
何かよくわからない機能があって、自分でもイエスだかノーだかわからないような問いかけをしてきて、
試しにやってみたら大事なファイルが全滅したなどという事故が起ったら嫌だろう。

そんな感じだ。
全く同一の機能を実装しても、かえって不便で使わない機能になるかも知れないし、
その機能のみならず、アプリそのものが意味不明で危険なモノだと感じるようになるかも知れない。
少なくとも、二人しかいないかも知れない真魚ユーザーの一人である嫁には必要ではない機能なので、
実装するとしても、嫁が不便に感じないよう、嫁の目に触れないように実装しなきゃいけない。
万が一それに気がついてしまっても、誤った操作で損害が発生しないように実装しなきゃいけない。

じゃぁどういう実装にするかということだが、それを考える余裕は今はないし、
「今は」どころか、面倒くさければずーっと考えずに後回しにするかも知れない。
確かにあれば便利だなぁ、でもなぁ、って言ったまま、帰らぬ人になるかも知れない。

たぶん関連のある記事:

コメントは終了しています。