MS−DOSについて
本書では、プログラムを書いたり、マシン語に翻訳したり、シミュレートしたり、デバイスに書き込んだり
といった一連の作業を、全てMS−DOSで行っています。そのつど初心者にも分かるように説明してきた
つもりですが、MS−DOSについて、よく使われそうな基本的なことがらをまとめますので、必要に応じて
参照して下さい。
例を示しながら説明するために、下のようなドライブ、ディレクトリー、ファイルの構造があるとしましょう。
CとAがドライブ、< >がディレクトリー、その他をファイルとします。DOS/Vパソコンでは、一般には、
<WINDOWS> 等のディレクトリーや、CONFIG.SYS、AUTOEXEC.BAT等のファイルが入っているハード
ディスクがドライブCで、フロッピーディスクを入れるドライブがAです。C:\、A:\をルートディレクトリー、そこ
に含まれるディレクトリーをサブディレクトリーと言います。ディレクトリーと言うのはファイルを整理して入れる
引き出しのようなものですが、図の例のように、さらにディレクトリーを含んだりもします。ファイル名には、
普通p0.asm、picw.exe などのように、ピリオド以下の部分(拡張子と言いう)がついていますが、ここで
は省略します。なお、使う文字は日本語入力でない半角文字です。大文字でも小文字でもどちらでもかま
いません。
C:\―――<DIRC_1>―――<DIRC_3>――― FIL_8
| | +― FIL_9
| |
| +―<DIRC_4>――― FIL_10
| |
| +― FIL_3
| +― FIL_4
|
|―<DIRC_2>――― FIL_5
| +― FIL_6
+― FIL_1 +― FIL_7
+― FIL_2
A:\―――<DIRC_5>――― FIL_13
| +― FIL_14
+−FIL_11
+−FIL_12
ドライブCのルートディレクトリーC:\には<DIRC_1>、<DIRC_2>
という2つのディレクトリーと、FIL_1、
FIL_2 の2つのファイルがあります。<DIRC_1>には2つのディレクトリー
<DIRC_3>、<DIRC_4>と、
FIL_3、FIL_4の 2つのファイルがあります。また、<DIRC_2>には3つ、<DIRC_3>には2つ、<DIRC_4>
には1つのファイルがあります。A:\ についても同じように見ます。
なお、コンピューターが現在位置するディレクトリーをカレントディレクトリーといいます。また、なれるまで
分かりにくいかも知れませんが、ピリオド1つ「.」で自分自信のディレクトリーを、2つ「..」で1つ上の
ディレクトリーを表します。
それでは、上の図を使って以下のコマンド(命令)について説明していくことにしましょう。見ての通り、
いずれもWindowsのファイルマネージャーやエクスプローラーでできることです。ただ、MS−DOSでも
できると、非常に便利だということです。重要というか、良く使われると思われる順に説明していきます。
左の数字がその順番です。
<< ファイル関連のコマンド >>
3.COPY ・・・ファイルを目的のディレクトリーにコピーする
4.DEL ・・・ファイルを削除する
8.RENAME(REN) ・・・ファイル名を変更する
5.TYPE ・・・ファイルの中味を見る
<< ディレクトリー関連のコマンド >>
2.CHDIR(CD) ・・・カレントディレクトリーを変える
11.DELTREE ・・・デイレクトリーの構造をそのまま削除する
1.DIR ・・・カレントディレクトリーの中味、ドライブの残量を表示する
6.MKDIR(MD) ・・・新しくディレクトリーを作る
7.RMDIR(RD) ・・・ディレクトリーを削除する(中味を空にして)
9.TREE ・・・ディレクトリーの構造を表示する
10.XCOPY ・・・ディレクトリーの構造をそのままコピーする
<< ディスク関連のコマンド >>
12.DISKCOPY ・・・フロッピーディスクをそっくりコピーする
13.FORMAT ・・・フロッピーディスクをフォーマットする
1.DIR
たとえば、
C:\>
において
DIR (E) 注:(E)はEnterキー
と打つと、ドライブCのルートディレクトリーに含まれるディレクトリー、ファイルを表示し、最後にドライブCに
あとどれだけの余白があるかを表示します。これはいかなるディレクトリーにおいても同様で、最後にその
ディレクトリーが所属するドライブの余白を表示します。
ディレクトリー内にディレクトリーやファイルがたくさんあって、一画面ではおさまらないこともあります。
そんなときは、
DIR /P (E)
とすると、画面いっぱいのところでいったん停止します。任意のキー(スペースキーを押す習慣を身につける
と良いでしょう)でスタートし、また停止します(以下繰り返し)。
DIR /W (E)
とすると、ファイルを5こずつ横に並べて表示します。従って、一度に多くのディレクトリーやファイルを表示
できます。いろいろなディレクトリーで試してみましょう。目的のディレクトリーに移るには、次のコマンドを
使います。
2.CHDIR(CD)・・・Change Directory の意味
現在のディレクトリーから、別のディレクトリーに移りたいときに使います。上の図において、
C:\> から <DIRC_1> へ移るには、
CD DIRC_1 (E)
と打ちます。
C:\DIRC_1>
となり、カレントディレクトリーは <DIRC_1> になります。以下同様です。
C:\>から<DIRC_4> へ移るには、
CD DIRC_1\DIRC_4 (E)
と打ちます。ディレクトリーとディレクトリーの間には \ を入れます。
C:\DIRC_1\DIRC_4>
から、一つ上のディレクトリーに戻るには
CD..(E)
と打ちます。「..」がすぐ上のディレクトリーを表します。
C:\DIRC_1\DIRC_4>
から、二つ上の C:\ 行くには、
CD.. (E)
を二回繰り返せば良いことはお分かりと思いますが、
CD..\..(E)
と打っても行けます。
<< ドライブの移動 >>
別のドライブに移るには CD は使わず、次のようにします。例えば、
C:\DIRC_1>
にいて、A:\ に移るには、
A: (E)
とします。ドライブAでいろいろやったとしても、ドライブCに戻るべく、
C: (E)
と打つと、C:\ にではなく、ドライブAに移る前のカレントディレクトリー
C:\DIRC_1 に戻ります。
3.COPY
このコマンドを使えば、任意のファイルを目的の場所(ディレクトリー)にコピーすることができます。
例えば、
A:\DIRC_5\FIL_14(すなわち、ディレクトリー
<DIRC_5> のファイルFIL_14 )を、<DIRC_4>
にコピーする
には、つぎのようにします。 まず、カレントディレクトリーを、
A:\DIRC_5 にします。こうしなくてもできます
が、分かりやすいですし、いくつもコピーするときなどは合理的です。そして、
COPY FIL_14 C:\DIRC_1\DIRC_4 (E)
と打ちます。
<< ワイルドカード(*)の活用 >>
ここで、非常に便利なワイルドカードについて話しましょう。アスタリスクと呼ばれる
「*」です。例えば、
BILING.SYS、JFONT.SYS、JDISP.SYS、・・・のように、.SYS が共通する場合、これらのファイルを一括
して、*.SYS で表せるのです。つまり、「*」は「全ての」というような意味です。従って、
COPY *.SYS
としてやると、○.SYS (拡張子がSYS)のファイルが全て一度にコピーできてしまいます。同様に、*.*は、
全てのファイルを表すことになりますから、
COPY *.*
としてやると、ディレクトリー内の全てのファイルがコピーされます。これは、MS−DOSならではの便利な
記号で、非常によく使われます。「PIC」を開発中に、例えばコードソース
*.asm のみ取り出して、
フロッピーに入れたいなどというときも、これを使えば一発です。大いに活用しましょう。私など、WINDOWS
のエクスプローラでファイル操作をしている際、わざわざMS−DOSに移ることもあります。
ワイルドカードにはもう一つ「?」(全ての一文字を表す)というのがありますが、「*」ほどには使う機会は
ないでしょう。
最後にもうひとつ、1.の DIR と組み合わせて、例えば
DIR *.HEX (E)
とすると、ディレクトリー内の、*.HEX ファイルのみ表示します。
.HEX の部分をいろいろ変えて試して
みましょう。
4.DEL・・・Delete(削除する)の意味
いらなくなったファイルを削除するときに使います。大事なファイルを消すと大変ですから、このコマンドを
使うときは慎重な姿勢になるよう、ふだんから心がけましょう。使い方は簡単です。例えば、<DIRC_4>
のFIL_10 を削除するには、
DEL C:\DIRC_1\DIRC_4\FIL_10 (E)
とします。あるいは、あらかじめ、カレントディレクトリーを C:\DIRC_1\DIRC_4 に移しておいてから、
DEL FIL_10 (E)
とします。ディレクトリー内の全てのファイルを消したいときは、
DEL *.* (E)
としてやればよいことは、もうお分かりでしょう。
5.TYPE
エディタを用いなくても、文書ファイルの中味を見ることができます。それが、このコマンドです。一般的に
は *.TXT、*.DOC、*.MANといった拡張子のファイルが文書ファイルです。文書ファイル以外のものを
TYPE で見ようとするとどうなるか、一度試しみて下さい。たいていは訳の分からないものが表示されます
が、AUTOEXEC.BAT や CONFIG.SYSなどは普通に見ることができます。それでは話を元に戻して、
例えば、
TYPE README.TXT (E)
のように打つと、README.TXTというファイルの中味が表示されます。長いファイルを一ページ毎に表示
させるのには、
TYPE README.TXT |MORE (E)
としてやります。「|」は[\]キーの Shiftです。止まったページを続行するには、任意のキー(スペースキー)
を押します。
6.MKDIR(MD)・・・Make Directory の意味
ディレクトリーを新たに作成するコマンドです。まず、作成したい場所(ディレクトリー)に、
カレントディレクトリーを移します。ディレクトリー名を決めて(例えば NEWDIR_1 という名前にしたとしま
しょう)、
MD NEWDIR_1 (E)
と打ちます。実際に出来たかを、DIR (E) として確認してみて下さい。
ところで話がそれますが、実験などのためにファイルを用意するには、どうしたら良いでしょう。一番手っ取り
早いのは、文書作成画面(DOSでは「EDIT」)で、ひとことの文を作り(本当は何もいらないが)ファイル名
を決めて保存すると良いでしょう。
7.RMDIR(RD)・・・Remove Directory の意味
ディレクトリーを削除するコマンドです。例えば、先の図で、<DIRC_4>を削除することにしましょう。まず、
<DIRC_4>の中味を空にしなければなりません。カレントディレクトリーを、<DIRC_4>に移して、
DEL *.*
とします。次に、
CD.. (E)
と打って、<DIRC_1>に移ります。そこで、
RD DIRC_4 (E)
とします。最初から、カレントディレクトリーを、<DIRC_1> にとどめて、
DEL DIRC_4\*.* (E)
として、
RD DIRC_4 (E)
と打っても同じ結果が得られます。DIRC_1 を消すには、FIL_3、FIL_4 を削除し、DIRC_3、DIRC_4
を消して
から、ということになります。とにかく、RD
を使うには、ファイルはもちろん、それに含まれるサブディレクトリー
も消して、空の状態にしておかなければなりません。(11.DELTREE 参照)
8.RENAME(REN)
ファイルの名前を書きかえるときに使います。まず、名前を変えようとしているファイルがあるディレクトリー
に移ります。現在の名前が OLDNAM.TXTでこれを NEWNAM.TXTという名前に書きかえるとします。
REN OLDNAM.TXT NEWNAM.TXT (E)
としてやります。
9.TREE
ルートディレクトリーから木の枝のように伸び広がっているディレクトリーの構造を表示します。コンピューター
を長く使っていると、知らない間に数多くのディレクトリーができているものです。
C:\>
で
TREE (E)
としてみましょう。画面に入り切らないときは、DIR
のときにも使った、|MORE を使いましょう。/F をつけると、
ファイルも表示します。
10.XCOPY
COPY はファイルのみのコピーでしたが、このコマンドは、ディレクトリーを含む構造をそのままコピーします。
つまり、コピーしたい元のものの中にサブディレクトリーが含まれていても、それもそっくりそのままコピーして
くれます。このとき、コマンドXCOPYのあとに、/S をつけるのを忘れないで下さい。上の図の場合に、例えば、
XCOPY A:\ C:\DIRC_1 /S (E)
とすると、ドライブAの中味がそっくり、ドライブCの<DIRC_1>に含まれる形でコピーされます。
11.DELTREE
これはあまり使うことはないでしょう、というより怖いので使わない方が良いかも知れません。DEL
(ファイル
を消す)でさえ要注意でしたが、このコマンドはあるディレクトリーに対して実行すると、そのディレクトリーに
含まれるファイルはもちろん、サブディレクトリーも、全て一度に消してしまいます。例えば、
DELTREE C:\DIRC_1
とやったとすると、
「ディレクトリー C:\DIRC_1 とすべてのサブディレクトリーを削除しますか(Y/N)?」と聞いてきますが、
Y (E)
とすると、もう取り返しはできません。<DIRC_1>以下の全てが消えてしまいます。うっかり、自分の
コンピューターで
DELTREE C:\
などとやったら大変なことになります。ただし、DOS/V機の場合です(ドライブCがハードディスクで、
ドライブAがフロッピードライブとして話しています。以下もそうです)。では、何故このようなものを紹介したか
というと、一つの使い道として、いくつかのサブディレクトリーやファイルが入ったフロッピーを、さらの状態に
したいときが考えられます。
DELTREE A:\
としてやれば良いわけです。 13.FORMAT でも同じ結果が得られますが、中味によってはこちらの方が
短時間で済みます。
12.DISKCOPY
フロッピーの中身をそのままべつのフロッピーにコピーしたいときに使います。今は、たいていフロッピー
ドライブが一つだけですから、送る側も受ける側も
A: で、
DISKCOPY A: A: (E)
とします。途中、指示が表示されますから、それに従えば簡単にできます。
13.FORMAT
フロッピーをコンピューターで使えるようにするのに使います。フォーマットすると言います。本来の使い方
以外に、11.DELTREE 同様、フロッピーディスクをさらの状態にしたいときにも使います。
FORMAT A: (E)
とします。指示に従えば、簡単にできます。最後に
「ボリュウムラベルは?」
と聞かれますが、何もしないでリターンキーを押せば良いです。
DEL や DELTREE では要注意と強調しましたが、実は、このコマンドも同じ位要注意なのです。誤って、
FORMAT C: (E)
としてしまったら、ドライブC(ハードディスク)の内容が全て白紙の状態になります。泣くに泣けません。
<< HELPについて >>
「PIC」の開発に関して言えば、MS−DOSについての知識は、上の内容で十分過ぎるくらいです。最後
に、MS−DOSに興味をもった人に、HELPの使い方を紹介しておきます。ただし、
MS−DOS・Ver6.2/V(DOS/V機用)での話です。他のMS−DOSでは以下の通りではないかも
知れませんが、あしからず。
それでは3通りのHELPの表示の仕方を示します。いずれも、MS−DOSの画面なら、カレントディレクトリー
がいかなるディレクトリーであってもOKです。
★その1)
FASTHELP (E)
と打ちます。一通りのコマンドがアルファベット順に列挙され、それぞれ簡単な説明が表示されます。どんな
コマンドがあるかを知りたいときや、コマンド名を思い出せないときに助かります。
★その2)
あるコマンドについての詳しい説明を見たいときには、
コマンド /? (E)
とします。たとえば、COPY について知りたければ、
COPY /? (E)
とすればOKです。
★その3)
本格的にMS−DOSに取り組みたいときには、
HELP (E)
とします。コマンドの一覧が表示され、目的のコマンドにカーソルを合わせて
Enterキーを押すと、その
コマンドのさらに詳しい説明が表示されます。画面の操作については下を見れば分かります。終わる
には、 Altキー、↓キー、でファイルの欄を表示し、「終了」します。
私のパソコンは、MS−DOS6.2/Vの上にW3.1を入れ、さらにW95のアップグレード版を用いた
ので、MS−DOS6.2がいつでも使えるのですが、直接W95を入れた場合は、W95、98のDOS窓
では、★その1)、★その3)は使えません。使えるのは、★その2)の
コマンド /? (E)