コマンドラインを生成支援

自動化で楽しよう、というのは、データ処理みたいなものにしか使えないワザではないです。キーボードで打ち込んで実行するようなコマンドライン、あれの生成を補助するなんていうのもアリです。

コンピュータの操作って、マウス操作でやるようなことばかりではないですよね。黒い画面に白い文字で命令文をなんだかポチポチ打ち込んで、Enterキーを押して実行、みたいなパターンもあります。急に手慣れた玄人っぽく見えるあれです。白い文字じゃなくて、緑の文字だったりすると、もはやちょっとしたハッカーみたいな気分でしょうか。まあ、そこまでいうのは大げさですが。

ともかく、システムを管理する際に、必要に応じてこういうコマンドライン入力が必要になるような場面は、時に避けがたいものです。そして、そこでのコマンド実行、特に、システム上に強力な変更を加えるようなコマンドの実行は、たいへんに緊張するのが普通です。打ち込んだコマンドラインにちょっとでもミスがあれば、運が良くて単に動作しないだけ、運が悪ければ、なにか想定外の動作をしてしまって、システムを壊したりする原因まで作ってしまいかねません。

こういうのを少し楽にする方法として、打ち込むべきコマンドラインを自動で作ってもらい、それを入力欄にコピー&ペーストする、というのもあります。そのつど変わる部分(パラメータっていう時があります)はどこかフォーム上にでも打ち込んで、必要なコマンドラインをそこから導き出してもらうわけです。こういうのを「自動化」の一例と呼んでも、一応いいんじゃないかと思いますがどうでしょう。

そんな間接的な方法じゃなくて、ボタンをマウスクリックしたら、その場でそのコマンドラインを実行させちゃうのではダメなのかな、という意見も出ることでしょう。もちろんそういうのもアリに決まっていますし、コピペの手間もはぶいて、手数が減らせますね。それはそうなのですが、コピペ用のコマンドラインのサンプルが表示されるだけの部分をあえて自動化する、というアイデアが役にたつような場面も、場合によっては出てきます。

打ち込むべきコマンドがとても強力なもので、万にひとつも間違えたくない場合、というのがひとつ。自動生成で確実に正しいコマンドを作りたいけど、その自動生成が完璧な動作をするかどうかを無条件に信用するにはまだ実績も少なく、念には念を入れて人間が途中で目視して確かめたい場合です。

あとは、生成されるコマンドラインがそのまま直接実行されるのじゃなくて、バッチファイルや設定ファイルの一部を構成するような場合。これはコピペを生成するのが自然な動作ということになるでしょう。

教育的な意図であえてコピペ生成にとどめる、というのもあるかもしれません。そのコマンドラインは将来的にも色々と応用して使うため、怪しいプログラムでブラックボックス化するのを防いで、ちゃんとスキルを継承させていきたいとき。いわば補助輪としての(半)自動化ですね。