エイリアス機能でコマンドプロンプトを使いやすくする

比較的高機能なシェルでは、タイプが面倒なコマンドやコマンド名がほかのOSと異なるコマンド(rmとdelなど)を使いやすくするためにエイリアスという機能が用意されています。コマンドプロンプトで、この機能に相当するのがdoskeyコマンド。使い方は簡単で、コマンドプロンプトから「doskey {マクロ名}={実行コマンド名}」と入力するだけです。

例えばLinux系の一般的なコマンドである「cat」をコマンドプロンプト上で実現するには、「doskey cat=type $*」と実行しましょう。それ以降のコマンドプロンプトでは、「cat {ファイル名}」と実行すれば、代わりにtypeコマンドが実行され、指定したファイルの内容が表示されます(46図)。

図46 「dos key=type $*」と入力して[Enter]キーを押せば、「cat {ファイル名}」と実行可能になります

登録すべき内容はユーザーによって異なりますが、筆者の場合はLinux系OSと同じ操作性を実現させるため、「cat=type $*」「ls=dir/w $*」といったマクロと、素早くコンピューターを再起動させるために「restart=shutdown.exe -r -t 0」というマクロを登録しています。どのようなコマンドが便利なのかはユーザーによって異なりますので、ご自身で拡張にチャレンジしてください。

しかし、このdoskeyで定義したマクロは、一度コマンドプロンプトを終了させると消えてなくなってしまいます。そこで、コマンドプロンプト起動時に自動実行させるエントリをレジストリに加えましょう。まずはマクロファイルを作成します。任意のテキストエディターを起動し、マクロの内容を{マクロ名}={実行コマンド名}で一行ずつ記述し、「%USERPROFILE%\macros.txt」ファイルとして保存してください(図47~49)。

図47 メモ帳を起動し、マクロとして登録するコマンドを入力します

図48 ファイルはユーザープロファイルフォルダーに「macros.txt」として保存しましょう

図49 先の手順を参考にレジストリエディターを起動し、HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRunキーを開きます

次に管理者権限でレジストリエディターを起動し、HKEY_CURRENT_USER\Software\Microsoft\Command Processorに文字列値「AutoRun」を作成。データ値を「doskey /macrofile=%userprofile%\macros.txt」に変更してから、レジストリエディターを終了させます(図50~54)。

図50 右ペインの何もないところを右クリックし、メニューから<新規>→<文字列値>とクリックします

図51 値名を「新しい値 #1」から「AutoRun」に変更します

図52 文字列値「AutoRun」をダブルクリックし、値のデータを「doskey /macrofile=%userprofile%\macros.txt」に変更してから<OK>ボタンをクリックします

図53 [F5]キーを押して変更内容をシステムに反映させてから、<×>ボタンをクリックしてレジストリエディターを終了させます

図54 この状態でコマンドプロンプトを起動しますと、doskyeコマンドが自動実行され、作成したマクロファイルが適用されます

今回はコンピューターを再起動する必要はありません。すぐにコマンドプロンプトを起動し、登録マクロを確認する「doskey /macros」を実行してみましょう。すると先ほど作成したマクロファイルの内容を読み取り、各マクロが使用可能になります。