OSがGUIのWindowsにシフトした現在(2005年6月)では、一般ユーザーがCUIのMS−DOSを使用する機会はほとんど無くなりましたが、次の理由から、WindowsXPにはCUIのMS−DOS環境が準備されているようです。
・過去のソフトウェア資産の継承 (例:MS−DOSベースの図書管理ソフトウェアをそのまま使用したい)
・特定ユーザーによるコンピュータ管理 (例:Patchファイルを配布したい、マウス操作不要でWindowsを制御したい)
・バッチ処理 (例:Windows起動時にファイルチェックやネットワーク設定を行いたい)
・プログラム作成時間の短縮 (例:VC++などでWindowsAPIの使用を避け簡単にコンソール・プログラムを作成して使用したい)
など。
ここでは、WindowsXPのMS−DOS環境について説明したいと思います。
−目次−
1.MS−DOS環境の起動
2.MS−DOS環境のコマンド(一般ユーザ向け)
3.MS−DOS環境のコマンド(コンピュータ管理者向け)
4.MS−DOS環境の設定(画面)
5.MS−DOS環境の設定(デバイスドライバの登録:CONFIG.NT)
6.MS−DOS環境の設定(プログラムの自動実行:AUTOEXEC.NT)
図1 MS−DOS環境の起動
図2 コマンドプロンプトの実行結果
(もうちょっと詳しく)
このコマンドプロンプト(DOS窓と呼ぶ)がWindowsXPのMS−DOS環境です。
DOS窓では、通常のMS−DOSと同様、キーボード入力によるMS−DOSのコマンド、アプリケーションおよびバッチの実行が可能なだけではなく、Windowsアプリケーションの起動・実行も可能(*1)です。また、WindowsXPはマルチタスクのOSのため、このDOS窓はメモリ容量の許す限り、何個でも起動が可能なものとなっているようです。
*1:Windowsの関連付けファイルも起動できる。(例:README.TXTとタイプするとメモ帳が起動する)
MS−DOSVer6.2以降、MS−DOSにどんなコマンドがあるか、また、どのように使用するかなど、コマンドの使用方法を表示するHELPコマンドが準備されています。
WindowsXPのDOS窓でHELPコマンドを実行してみましょう。
>HELP 特定のコマンドの詳細情報は、"HELP コマンド名" を入力してください ASSOC ファイル拡張子の関連付けを表示または変更します。 AT コマンドやプログラムを指定した日時に実行します。 ATTRIB ファイルの属性を表示または変更します。 BREAK 拡張 CTRL+C チェックを設定または解除します。 CACLS ファイルのアクセス制御リスト (ACL) を表示または変更します。 CALL バッチ ファイル中から、別のバッチ ファイルを呼び出します。 CD 現在のディレクトリを表示または変更します。 CHCP 有効なコード ページ番号を表示または設定します。 CHDIR 現在のディレクトリを表示または変更します。 CHKDSK ディスクをチェックし、状態を表示します。 CHKNTFS 起動時のディスクのチェックを表示または変更します。 CLS 画面を消去します。 CMD Windows コマンド インタープリタを新しく起動します。 COLOR コンソールの文字と背景の既定の色を設定します。 COMP 2 個のファイルまたはファイルの集合の内容を比較します。 COMPACT NTFS パーティション上のファイルの圧縮状態を表示または変更します。 CONVERT FAT ボリュームを NTFS に変換します。現在のドライブは変換でき ません。 COPY 1 個以上のファイルを別の場所にコピーします。 DATE 日付を表示または変更します。 DEL 1 個以上のファイルを削除します。 DIR ディレクトリ中のファイルやサブディレクトリの一覧を表示します。 DISKCOMP 2 つのフロッピー ディスクの内容を比較します。 DISKCOPY フロッピー ディスクの内容を別のフロッピー ディスクにコピーします。 DOSKEY コマンド ラインの編集、Windows コマンドの再呼び出し、マクロの 作成をします。 ECHO メッセージの表示、コマンド エコーのオン、オフの指定をします。 ENDLOCAL バッチ ファイルで、環境変数のローカライズを終了します。 ERASE 1 個以上のファイルを削除します。 EXIT CMD.EXE プログラム (コマンド インタープリタ) を終了します。 FC 2 個のファイルまたはファイルの集合の内容を比較して、それらの違いを 表示します。 FIND ファイルの中からテキスト文字列を検索します。 FINDSTR ファイルの中から文字列を検索します。 FOR 指定されたコマンドを、ファイルの集合の各ファイルに対して実行 します。 FORMAT Windows で使用するためのディスクをフォーマットします。 FTYPE ファイル拡張子の関連付けで使われるファイル タイプを表示または変更 します。 GOTO バッチ ファイル中で、ラベルで定義されている行へ Windows コマンド インタープリタの実行を移します。 GRAFTABL Windows がグラフィック モードで拡張文字セットを表示できるように します。 HELP Windows コマンドのヘルプ情報を表示します。 IF バッチ ファイル中で、条件処理を実行します。 LABEL ディスクのボリューム ラベルを作成、変更、または削除します。 MD ディレクトリを作成します。 MKDIR ディレクトリを作成します。 MODE システム デバイスを設定します。 MORE 出力を一度に 1 画面ずつ表示します。 MOVE 1 個以上のファイルをディレクトリから別のディレクトリに移動します。 PATH 実行可能ファイルの検索パスを表示または設定します。 PAUSE バッチ ファイルの処理を一時停止し、メッセージを表示します。 POPD 現在のディレクトリを PUSHD で保存したディレクトリに戻します。 PRINT テキスト ファイルを印刷します。 PROMPT Windows コマンド プロンプトを変更します。 PUSHD 現在のディレクトリを保存して、変更します。 RD ディレクトリを削除します。 RECOVER 不良または欠陥ディスクから読み出し可能な情報を復元します。 REM バッチ ファイルや CONFIG.SYS の中で、コメント (注釈) を記録します。 REN ファイルの名前を変更します。 RENAME ファイルの名前を変更します。 REPLACE ファイルを置き換えます。 RMDIR ディレクトリを削除します。 SET Windows 環境変数を表示、設定、または削除します。 SETLOCAL バッチ ファイルで、環境変数のローカライズを開始します。 SHIFT バッチ ファイルで、置き換え可能パラメータの位置をシフトします。 SORT 入力を並べ替えます。 START 別のウィンドウを起動して、指定したプログラムまたはコマンドを実行 します。 SUBST パスをドライブ名で置き換えます。 TIME システム時刻を表示または変更します。 TITLE コマンド プロンプト ウィンドウのタイトルを設定します。 TREE ドライブまたはパスのディレクトリ構造を図式表示します。 TYPE テキスト ファイルの内容を表示します。 VER Windows のバージョンを表示します。 VERIFY ファイルがディスクへ正しく書き込まれたかを照合するかどうか Windows へ指定します。 VOL ディスクのボリューム ラベルとシリアル番号を表示します。 XCOPY ファイルやディレクトリ構造をコピーします。 >
●HELPコマンド+コマンド名で、より詳細な使い方が表示されます。
>HELP ASSOC ファイル拡張子の関連付けを表示または変更します。 ASSOC [.拡張子[=[ファイルタイプ]]] .拡張子 ファイル タイプに関連付ける拡張子を指定します。 ファイルタイプ 拡張子に関連付けるファイル タイプを指定します。 パラメータを指定しないで ASSOC と入力すると、現在のファイルの関連付け を表示します。ファイル拡張子を指定して ASSOC を実行すると、そのファイル 拡張子の現在のファイルの関連付けを表示します。ファイル タイプやコマンド を指定しないと、そのファイル拡張子の関連付けを削除します。 >
HELPコマンドで表示されるMS−DOS環境のコマンドは、一般ユーザーがよく使用すると考えられるコマンドが表示されます。WindowXPには上記以外にPINGコマンドやIPCONFIGなど、MS−DOS環境(CUI)で実行するコマンドがあります。
なお、MS−DOS環境のコマンドの一部(SUBSTやXCOPYなど)は32bit化されているようです。
HELPコマンドのコマンド一覧以外にもMS−DOS環境のコマンドがあります。
(1)COMファイル
Windowsのプログラムはファイル構造の理由からファイルの拡張子が.exeであるため、拡張子.comのファイルは基本的にMS−DOS環境のコマンドです。.comファイルはディレクトリ \WINDOWS\SYSTEM32
内に存在します。
>DIR \WINDOWS\SYSTEM32\*.COM ドライブ C のボリューム ラベルがありません。 ボリューム シリアル番号は C4D2-339F です C:\WINDOWS\SYSTEM32 のディレクトリ 2004/08/05 21:00 7,680 CHCP.COM 2004/08/05 21:00 64,814 COMMAND.COM 2004/08/05 21:00 9,216 DISKCOMP.COM 2004/08/05 21:00 7,168 DISKCOPY.COM 2004/08/05 21:00 25,600 FORMAT.COM 2004/08/05 21:00 27,648 GRAFTABL.COM 2004/08/05 21:00 21,086 GRAPHICS.COM 2004/08/05 21:00 17,003 KB16.COM 2004/08/05 21:00 1,540 LOADFIX.COM 2004/08/05 21:00 19,456 MODE.COM 2004/08/05 21:00 15,872 MORE.COM 2004/08/05 21:00 11,264 TREE.COM 2004/08/05 21:00 18,432 WIN.COM 13 個のファイル 246,779 バイト 0 個のディレクトリ 23,907,491,840 バイトの空き領域 > ※WIN.COMは実行しても何も起こらない。
(2)EXEファイル
拡張子が.exeファイルにもMS−DOS環境(CUI)で実行するコマンドはあります。このファイルもディレクトリ \WINDOWS\SYSTEM32 内に存在します。中にはWINDOWSのレジストリが操作できるコマンド、不意にメモリ常駐してしまうコマンド、WINDOWSを強制終了する等のコマンドも存在するため、コマンド実行には注意が必要です。
次に主なMS−DOS環境のコマンドを示します。
ADDDRV.EXE キャラクタ・デバイス登録 APPEND.EXE パス DEBUG.EXE プログラムのデバッグ DEFRAG.EXE ドライブの断片化整形 DELDRV.EXE キャラクタ・デバイス削除 EDLIN.EXE ライン・エディタ EXE2BIN.EXE .exeファイルの小容量化 EXPAND.EXE 圧縮ファイル管理 FASTOPEN.EXE ディスクアクセス高速化 FINGER.EXE ユーザ情報の表示 FTP.EXE FTPクライアント HOSTNAME.EXE ホスト名表示・設定 IPCONFIG.EXE IP表示・設定 IPSEC6 IPV6ツール IPV6.EXE IPV6の表示・設定 IPXROUTE.EXE NWLink IPXルーティング、ソースルーティング制御 JP.BAT 日本語表示環境 LPQ.EXE LPQの表示 LPR.EXE ネットワークプリンタ MAKECAB.EXE キャビネットファイル作成 MEM.EXE メモリ状態の表示 MOUNTVOL.EXE ボリューム・マウント MRINFO.EXE マルチキャスト表示 MSG.EXE メッセージ送信 NBTSTAT.EXE TCP/IP NetBios表示 NET.EXE NETコマンド総合ツール NETSH.EXE NETシェル NETSTAT.EXE ネットワーク接続状況表示 PING.EXE PING PING6.EXE IPV6用PING POWERCFG.EXE システム電源の制御設定・表示 PROXYCFG.EXE プロキシの設定・表示 RASAUTOU.EXE RAS構成 RASDIAL.EXE RAS接続 RCP.EXE TCP/IPリモート・コピー REG.EXE Windowsレジストリの設定・表示 ROUTE.EXE ルーティング RSH.EXE リモートシェル SETVER.EXE バージョン管理 SHARE.EXE 共有 TRACERT.EXE TRACEROUTE TRACERT6.EXE IPV6用TRACEROUTE US.BAT 英語表示環境
上記コマンドの多くは、コンピュータ管理者用のコマンドとして準備されており、一般ユーザが使用する機会は少ないと思います。
コマンドプロンプト窓は、画面の大きさ、使用するフォント、画面色等がプロパティで設定できるようになっています。コマンドプロンプト窓の上部バーで右クリックするか、窓左上のC:\部分を左クリックしてプロパティを選択します。
全画面表示を選択した場合は、ALT+Enterで元の窓画面に戻ります。(トグル動作)
図3 プロパティの各種設定画面
WindowsXPのMS−DOS環境(コマンドプロンプト)にも、MS−DOS起動時と同様、漢字表示や漢字変換ドライバ等を登録する
CONFIG.SYS ファイルのような設定ファイルが用意されています。フォルダ \WINDOWS\SYSTEM32
内の CONFIG.NT ファイルがこれに該当し、コマンドプロンプトを起動すると CONFIG.NT ファイルが読み込まれて記述されているドライバが登録され、また、環境が設定されます。
CONFIG.NT ファイルはメモ帳を起動し、ドラッグ・ドロップすることで、参照・編集が可能です。
図4 コマンドプロンプト起動時のデバイスドライバ登録ファイル
フォルダ \WINDOWS\REPAIR 内に同じファイル(修復用)があるようなので、 CONFIG.NT をデフォルトの状態に戻すときは、フォルダ \WINDOWS\REPAIR 内の CONFIG.NT ファイルをフォルダ \WINOWS\SYSTEM32 内に上書きコピーすればOKです。
WindowsXPのMS−DOS環境(コマンドプロンプト)にも、MS−DOS起動時と同様、プログラムやバッチを実行させる
AUTOEXEC.BAT ファイルのようなファイルが用意されています。フォルダ \WINDOWS\SYSTEM32
内の AUTOEXEC.NT ファイルがこれに該当します。
コマンドプロンプトを起動すると CONFIG.NT ファイルが読み込まれ、次に AUTOEXEC.NT
が読み込まれてそれに記述されているプログラムやバッチが実行されます。
CONIG.NT と同様、メモ帳で、参照・編集が可能です。
図5 コマンドプロンプト起動時のプログラム自動実行ファイル