====================================================== 2000.02.21 ======
               Windows 95/98 管理人のための MS-DOS 基礎講座
------------------------------------------------------------------------
                第 3 回 いろいろなコマンドを使ってみよう
========================================================================

	こんにちは。でるもんた・いいじまです。

	とうとう Windows 2000 が発売されました。2000 や NT では 95/98 とは
	事情の異なる部分も多いと思いますが、基本的なコマンドの使い方や、
	コマンド式ならではの利用法など、共通の部分もありますので、2000 は
	MS-DOS とは関係ないからといわず、MS-DOS をぜひ覚えていただければ、
	と思います。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆読者のお便りから☆

	●最近では GUI 主流で、われわれ PC ユーザーが DOS コマンドを使う
	 機会はないと思いますが、どのようなときに、覚えといてよかったと
	 思いますか。その事例も交えて教えていただけないでしょうか。

		→非常に難しい質問です(^^;) というのは、私にとっては、
		 コンピュータを覚えたとき(10 年前)から今でもずっと、
		 コマンド式の操作があって、必要なときにはすぐにそれが
		 使える、というのが当たり前だったからです。

		 たしかにいまのところは、GUI でも簡単にできることをわざ
		 わざコマンド式でやっているだけなので、いったい何のために
		 やっているのかわからなくなってしまうのも無理のないところ
		 ですが、コマンド式の利点は、大きく分けると
			○コマンド式しか使えない貧弱な状況に陥ったとき
			○コマンド式のほうが有利な事例
		 の 2 つがあります。このマガジンは当分の目標を前者への
		 対処においていますが、後者の例として、
			○今回ご紹介する「ファイルの改名」
			○第 4 回でご紹介する「リダイレクト・パイプ」
			○第 6 回でご紹介する「バッチファイル」
		 などがあります。

		 もちろん、GUI のほうが有利な事例はたくさんあります。
		 要は「適材適所」だと思います。

	●「...」や「....」は、MS-DOS 5.0AH、6.2 でともに使えませんでした。

		→ありがとうございました。機種が書いてありません(おそらく、
		 5.0AH というバージョンから察するに PC-9801/9821 でしょう)
		 が、たぶんどの機種でも同じだと思います。というわけで、
		 この方法はどうやら Windows 95/98 専用のようです。

	●Outlook Express からメモ帳にペーストしようとすると、メモリ不足
	 という趣旨のメッセージが出ます。MEM コマンドやリソースモニタで
	 見ても異常はありません。対処法を教えてください、

		→申し訳ありませんが、このマガジンでは「Windows のトラブ
		 ル」には基本的には対処できません。Windows 関係の各種
		 掲示板や、ネットニュースのニュースグループ(japan.comp.
		 windows98、fj.os.ms-windows.win98 など)などで質問して
		 みてください。

		 なお、その際は、
			○なにをもって「異常なし」と判断したのか、MEM
			 コマンドなどの出力結果そのもの
			○正確な再現手順
		 を書き添えると、適切な応答があると思います。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆本日のお題☆

	今回は「いろいろなコマンドを使ってみよう」と題して、MS-DOS の各種
	コマンドを扱います。

	いろいろ出てきますが、丸暗記する必要はいまのところありません。
	とりあえず「こんなコマンドがあるんだな」という程度に記憶にとどめて
	おいていただければ結構でして、あとでまた出てきてから読み返してみれ
	ばそれでいいと思います。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆予備知識☆

	このマガヂンでは、Windows の操作・管理についてある程度の予備知識が
	あることを前提に話を進めています。今回の記事では、次の概念はすでに
	知っているものとして話を進めさせていただきますのでご了承ください。

		○ファイル・ファイル名・ディレクトリ(フォルダ)
		○テキスト(.txt)ファイル

	また、前回までに説明した次の概念も重要ですので、曖昧なところがある
	場合はしっかり復習しておいてください。
		○ワイルドカード
		○カレントディレクトリ

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆テキストファイルの表示 - type と more☆

	まず最初に取り扱うのが、テキストファイルを画面に表示するための
	コマンド「type」「more」です。

	たとえば、

		C:\Windows> type msdosdrv.txt【リターンキー】

	とすると、カレントディレクトリの中の msdosdrv.txt というファイル
	(普通の Windows 95/98 の環境ならばこの場所にあるはずです)の中身
	が画面に表示されます。しかし、このファイルは長いので、1 画面に
	収まらない部分はスクロールして、見えなくなってしまいます。

	このような場合、dir コマンド(第 1 回)の時と同じように「| more」
	を使って

		C:\Windows> type msdosdrv.txt | more【リターンキー】

	としても間違いではありませんが、この場合は

		C:\Windows> more msdosdrv.txt【リターンキー】

	とすることができます。

	なお、type・more とも、複数のファイル名を指定したり、ワイルドカード
	を使用したりすることはできません。

	【補足】(1)「| more」は、dir や type 以外でも、ほとんどのコマンドで
	       使用可能です。これについては、詳しくは次回に説明します。
	    (2)dir には /p というオプションがありましたが、type には
	       /p はありません。なお、/p が使えるコマンドはほかにも、
		   少ないですが存在します。これについては出てきたところで
	       説明したいと思います。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆ファイルのコピー - copy☆

◇簡単な例

	【例題】カレントディレクトリにある report1.doc を、フロッピーディ
	    スクにコピーしたい。

	ファイルのコピーには、そのものずばり copy というコマンドを使います。
	フロッピーが A ドライブだと仮定すると、

		C:\My Documents> copy report1.doc a:【リターンキー】

	とします。

	このように、copy コマンドの一般形は

		copy コピー元のファイル コピー先

	という形をしています。

◇ワイルドカード

	「コピー元ファイル」には、ワイルドカードを使うことができます。
	たとえば、

		C:\My Documents> copy *.doc a:【リターンキー】

	とすると、拡張子 .doc のファイルすべてを A ドライブにコピーします。

◇「コピー先」に何を指定するか

	「コピー先」には、普通はディレクトリ名を指定します。たとえば、上の
	例ではどちらも「a:」、つまり、「A ドライブのカレントディレクトリ」
	を指定していますが、そのかわりに、
		○A ドライブのルートディレクトリ「a:\」
		○同じドライブの別ディレクトリ「.\reports」
	なども指定できます。なお、コピー先がルートディレクトリ以外のディ
	レクトリの場合は、末尾に「\」はつけません。つまり、上の例で
	「.\reports」を「.\reports\」とするとエラーになりますのでご注意
	ください。

	また、コピー元のファイルがひとつだけならば、次のようにして、名前を
	変えながらのコピーができます。

		C:\My Documents> copy report1.doc report2.doc【リターンキー】

	こうすると、report1.doc のコピーが、report2.doc という名前で、
	カレントディレクトリに作られます。これは何をしたいかというと、
	2 通めのレポートを書くときに、すでにできあがっている 1 通めの
	内容を流用して楽をしよう、という魂胆です(笑)。

	なお、

		C:\My Documents> copy report1.doc a:\report-2000Feb21.doc
					【リターンキー】

	といった形で「別のディレクトリに、別のファイル名で」というコピーも
	できます。

	【補足】コピー先をディレクトリにするとき、最後に「\」はつけません。
	    ところがこれだと、「カレントディレクトリの report1.doc を、
	    .\reports ディレクトリの中にコピーしたい」というときに、
	    「copy report1.doc reports【リターンキー】」とすると、
	    うっかり「reports」をタイプミスしたときに問題になります。
	    つまり、もし「copy report1.doc reportd【リターンキー】」と
	    タイプミスしたとすると、これは、「report1.doc のコピーを、
	    reportd(拡張子なし)という名前で作る」という意味になって
	    しまいます。

	    このようなときは、「reports\.」という小技があります。これを
	    使えば、「copy report1.doc reportd\.【リターンキー】」と
	    入力すると、きちんと、そんなディレクトリはないという趣旨の
	    エラーメッセージを出してくれます。
=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆ファイルの改名 - ren☆

	ファイルの名前を変えるには、ren というコマンドを使います。
	(rename の略と覚えましょう。)

◇簡単な例

	【例題】report1.doc を、report1.txt という名前に変えたい。

		C:\My Documents> ren report1.doc report1.txt【リターンキー】

	このように、ren コマンドでは、元のファイル名と、改名後のファイル名を
	並べて書きます。

◇ワイルドカード

	これだけでは、エクスプローラから右クリックする方がよっぽど簡単なの
	ですが、ワイルドカードを使うと、ものすごく便利なことができます。

	【例題】カレントディレクトリの中に、拡張子が .doc なのに中身が MS
	    Word の文書ではなくテキストファイルのものが多く存在するので、
	    すべて拡張子を .txt に変えたい。

	この場合、エクスプローラから右クリックする方法では、ひとつひとつ
	手作業で行わなければいけませんが、MS-DOS コマンドを使えば、次の
	ようにして簡単にできます。

		C:\My Documents> ren *.doc *.txt【リターンキー】

	【例題】report1.doc、report2.doc、…というファイルがあるが、resume1.
	    doc、resume2.doc、…という名前に変えたい

	この場合も、ワイルドカードを使うことができます。

		C:\My Documents> ren report?.doc resume?.doc【リターンキー】

	このように、「それぞれのファイルによって変わる部分」にワイルドカード
	を使えば、簡単に名前を変えることができます。

	なお、このように、2 番目の引数にもワイルドカードを使う用法は、
	copy コマンドでも利用できます。使う機会はあまりないと思いますが、

		C:\My Documents> copy *.doc a:*.txt【リターンキー】

	のようなことも可能です。

◇ワイルドカードについて注意

	ただし、このワイルドカードでは、「ワイルドカードの前の部分の字数が
	変わるような使い方」はできません。たとえば、

		C:\My Documents> ren report?.doc rep?.doc【リターンキー】

	としても、エラーになります。

◇ディレクトリの名前を変える

	Windows 95/98 の MS-DOS では、ren コマンドでディレクトリの名前を
	変えることもできます。しかし、古い MS-DOS では、ren コマンドでは
	ディレクトリの名前を変えることはできず、別のコマンド(NEC 版では
	rendir でした)を使う必要があります。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆ファイルの移動 - move☆

	ファイルをある場所にコピーするのではなく、ある場所から別の場所に
	移動するには、move というコマンドを使います。

	なお、move コマンドが MS-DOS に標準装備されるようになったのは比較的
	新しいことなので、ものすごく古い MS-DOS では使えないかもしれません。

◇move は基本的に copy と同じ

	move の使い方は、基本的には copy と同じです。ですから、

		C:\My Documents> move *.doc a:【リターンキー】

	とすれば *.doc はカレントディレクトリから A ドライブに移りますし、

		C:\My Documents> move report1.doc a:\report-2000Feb21.doc
					【リターンキー】

	のように名前を変えながらの移動も可能です。なお、

		C:\My Documents> move *.doc a:*.txt【リターンキー】

	という使い方はできないようです。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆ディレクトリの作成と削除 - md、rd☆

◇ディレクトリの作成

	新しくディレクトリを作るには、md というコマンドを使います。
	make directory の略です。

	ディレクトリを作る場合の手順は、たとえば次のようになります。

		C:\Windows> cd "\my documents"【リターンキー】
		C:\My Documents> md report1【リターンキー】
		C:\My Documents> cd report1【リターンキー】
		C:\My Documents\report1> md 2000-Jan【リターンキー】
		C:\My Documents\report1> md 2000-Feb【リターンキー】

	ここで、一足飛びに

		C:\My Documents> md report1\2000-Jan【リターンキー】

	とすることはできず、まずさきに report1 ディレクトリを作らなければ
	いけません。もちろん、すでに report1 ディレクトリがあれば、

		C:\My Documents> cd report1【リターンキー】

	とせずに

		C:\My Documents> md report1\2000-Jan【リターンキー】

	とすることはできます。

◇ディレクトリの削除

	いらなくなったディレクトリを削除するには、rd というコマンドを使い
	ます。remove directory の略です。

		C:\My Documents> cd report1【リターンキー】
		C:\My Documents\report1> rd 2000-Jan【リターンキー】

	ただし、この rd コマンドを使うには、ディレクトリの中身を空にして
	おかなければいけません。

	空にするには次に述べる del コマンドを使いますが、それが面倒ならば、
	やはり次に述べる deltree コマンドを使えば、中身を自分で空にしなく
	てもディレクトリを消すことができます。

	【余談】cd を chdir とも書けるのと同様、md は mkdir、rd は rmdir
	    とも書けます。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆ファイルの削除 - del と deltree☆

◇del

	ファイルを削除するには、del というコマンドを使います。(delete の
	略と覚えましょう。)また、大昔の名残で、erase と書いてもかまわない
	ことになっています。

	【例題】ファイルを編集したら、.bak という拡張子のバックアップファ
	    イル(念のため、編集前の内容を保存してあるファイル)ができ
	    てしまったので、消したい。

		C:\My Documents> del *.bak【リターンキー】

	なお、

		C:\My Documents> del *.*【リターンキー】

	とすると(つまり、すべてのファイルを消そうとすると)、間違って
	消してしまうことを防ぐために、消してよいかどうか尋ねてきます。

◇del /p

	比較的新しい MS-DOS では、del の引数に /p をつけると、ひとつひとつ
	のファイルごとに、消してよいかどうか尋ねてきます。ファイルが多かっ
	たり、複雑なワイルドカードを使ったりする場合は、間違いを防ぐために
	これをつけておくといいでしょう。

◇deltree

	さて、del コマンドではファイルは消せますが、ディレクトリは消せません。
	ディレクトリを消すには rd コマンドを使いますが、ディレクトリの中に
	ファイルがある場合は、まずその中身を del コマンドで消さなければいけ
	ないので面倒です。

	そこで、比較的新しい MS-DOS では、deltree コマンドを使うと、ディレ
	クトリを、その中身ごと消してくれます。

	【例題】C:\My Documents\report1 ディレクトリは要らなくなったので、
	    消したい。

		C:\My Documents> deltree report1【リターンキー】

	【例題】\windows\temp にゴミファイルがたまるので、消したい。この中
	    にはディレクトリもあるので deltree で一気に消してしまいたい
	    が、\windows\temp ディレクトリは消さずに残しておきたい。

	この場合、次のようにします。

		C:\My Documents> delteee \windows\temp\*.*【リターンキー】

	ここで、

		C:\My Documents> delteee \windows\temp【リターンキー】

	とするとディレクトリごと消えてしまいますので注意してください。
	また、実際には、ファイルひとつひとつを消すかどうかの確認メッセージが
	出てくるので、いちいち確認をとらずにすべて消してしまいたい場合は、
	/y というオプション(y は yes の略ですね)をつけて

		C:\My Documents> delteee /y \windows\temp\*.*【リターンキー】

	とすればいいでしょう。

	【補足】なぜ \windows\temp が使われるのか、Windows 95/98 以外の環境
	    ではどうなるのか、については、後日あらためて説明します。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆日付と時刻の変更 - date と time☆

	MS-DOS には、コンピュータの内蔵時計の日付と時刻の変更をするコマンド
	があります。コマンド名はそのものずばり「date」と「time」です。

	ここでは date だけ例を挙げますが、日付を設定する場合は、

		C:\Windows> date【リターンキー】
		現在の日付は 2000-03-01 (水)
		日付を入力してください(年-月-日):2000-02-29【リターンキー】

	のように使います。「日付を入力してください(年-月-日):」のところで
	なにも指定せずにリターンキーを押せば変更は行われませんから、この
	コマンドは、日付や時刻を確認するためだけの目的でも使用することが
	できます。

	また、

		C:\Windows> date 2000-02-29【リターンキー】

	のように、引数に日付(または時刻)を指定して実行すると、上のような
	表示は出ずに、黙って日付(または時刻)が変更されます。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆UNIX がわかる人のために☆

	MS-DOS の type、more は、それぞれ UNIX の cat、more にあたると
	考えていいでしょう。ただし、cat の持つ機能のうち、「複数のファイル
	を連結する」という機能は、type では使えません。これは copy コマンド
	で処理するのですが、詳しい説明はまた機会を改めてということにします。

	MS-DOS の copy は、UNIX ではもちろん cp です。ただし、次のような
	違いがあります。
		○MS-DOS では、「コピー元」には、ワイルドカード以外の形で
		 複数のファイルを指定することができない
		○UNIX ではできない「copy *.txt a:*.doc」のような芸当ができる

	move と ren は、UNIX では mv が担っている機能を、意味に応じて分担
	していると考えればいいでしょう。(ちなみに、MS-DOS の move でも、
	ファイル名の変更は可能です。)

	md、rd というのは、UNIX にはない略記法ですが、なれると便利です。
	もちろん mkdir、rmdir としても間違いではないので、短い書き方に慣れ
	られなければ、mkdir、rmdir としてもかまいません。

	del はもちろん rm です。deltree は rm -r です。これは、もともとの
	del コマンドの機能が貧弱だったので、rm -r 相当を実現するために新しく
	deltree コマンドが作られたからです。

	date と time は、同名の UNIX コマンドとの違いに注意してください。

=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆まとめ - 本日のキーポイント☆

	○type と more
	○copy、ren、move とワイルドカードの使い方
	○md、rd、del、deltree
	○date、time

	今回のキーは、なんといっても copy、ren におけるワイルドカードの
	使い方です。多少わかりにくくなってしまいましたが、慣れると非常に
	便利なものですので、ぜひおぼえて使ってください。

=-=-=-=-=-=-=-==-=-=-=-=-=-=-=--=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-
☆次回予告☆

	次回は「第 4 回 リダイレクト・パイプとデバイスファイルの話」と
	題して、コマンドライン系 OS の重要概念「リダイレクト」「パイプ」
	「標準入出力」について説明します。

	この機能は、GUI にない便利なものですので、ぜひ覚えていただければと
	思います。

	それではまた♪

========================================================================
メエルマガヂン Windows 95/98 管理人のための MS-DOS 基礎講座

☆発行人☆

        でるもんた・いいじま <L94102@mail.ecc.u-tokyo.ac.jp>
                        http://user.ecc.u-tokyo.ac.jp/~l94102/dos/

                ※このメールマガジンで取り上げてほしいテーマ、ご意見など
                 ありましたら、上のメールアドレスまでお気軽にどうぞ。

☆配信☆
        このメールマガジンは、「インターネットの本屋さん・まぐまぐ」を
        利用して配信しています。
                http://www.mag2.com     (マガジン ID=0000022456)

☆バックナンバー・登録解除・メールアドレス変更は☆

        上記のホームページまでどうぞ。
        なお、手動での登録解除は行っておりませんのでご了承下さい。
=========================================================================

Copyright © IIJIMA Hiromitsu aka Delmonta, 2016/03/10 15:09 JST
これは「古文書」です。 古くなった情報も原則未修正で保存していますのでご注意ください。

古文書本館トップ | 電脳外道学会