2024年12月14日 追記
今更どす(DOS)
ここではDOSコマンド(正確にはWindows10のコマンドプロンプト用のコマンドです)について、
ざっとご紹介したいと思います。マニュアルというわけではないのですべてを記述するわけではありませんが実用上、
『これくらいは知っておきたいかな?』と思われるものをご紹介したいと思います。
コマンドのご紹介をする前に、憶えていただきたい言葉があります。
『カレントドライブ』と『カレントディレクトリ』です。
カレントドライブ・カレントディレクトリとは、 コマンドプロンプトで作業対象となっているドライブとディレクトリのことです。 例えばコマンドプロンプトで DIR と入力しますと現在の(カレントドライブの)カレントディレクトリの内容を表示します。 ちなみに DIR . としても同じ結果が表示されます。 . はカレントディレクトリを表す文字です。 ちなみにちなみに .. と記述しますと親ディレクトリ(カレントディレクトリのひとつ上の階層のディレクトリ)になります。 これらのことを理解できていないとコマンドプロンプトが『さっぱり分からない...』ということになってしまうかもしれませんので憶えてくださいね。
2024/12/13日、Windows11の24H2の更新が届きました。
アップデートしたら再起動中に「DRIVER PNP WATCHDOG」というエラーが出て更新できず、止まってしまいました。 電源ボタンを押して再起動したら、ブートデバイスの選択画面が表示されました。 そのまま起動すれば問題なく前の23H2が起動したのですが、ちょっと気になって「修復」とか弄ってしまいました。 で、そのとき起動パーティションを起動できない方の「ゴミ」パーディション(後でみたら数十MB程度のホントに「ゴミ」パーティション)を デフォルトのパーティションに設定してしまったようで、起動しなくなってしまいました。 仕方ないので別のWindows PCでUSBブートメディアを作って起動して、Windows用のDOS窓コマンド【bcdboot.exe】というコマンドを実行してみたら 無事にまたブートデバイスの選択画面が出てきて起動できるようになりました。 PC起動時に余計な「ブートデバイス選択画面」が出るようになってしまいましたが、 分からないでブートローダーを弄るともっと酷いことにもなりかねませんので、このままとすることにしました。
・・・という感じなので、なにか有用なコマンドを新たに見つけたら追記していこうと思います。
WindowsのDOS窓用または、よく使いそうなコマンドなどからご紹介いたします。
- bcdboot (Windows DOS窓用)
-
実際に(私が)実行したコマンドライン
bcdboot C:/Windows -l ja-JP
ブートローダーが正しく動作しなくなってしまってPCが起動しなくなってしまったときに上のコマンドを実行したら、 再度起動できるようになりました。 Windows PCのSSDが壊れたのではなくて、ブートローダーの「データ」が書き変わってしまって起動できなくなって しまったようなときにこのコマンドを実行すると、また起動できるようになるかもしれません。 本当にどうしようのなくなって「壊れてもいいや!」という状況になったときに 「動けばいいな」くらいの気持ちでやってみるのであればよいかもしれません。 ただし、あくまで自己責任でお願いします。
なお私が所持しているPCの場合、bcdboot.exeコマンドは C:\Windows\System32\ フォルダにありました。
bcdbootコマンドに関するマイクロソフトのホームページより一部抜粋した説明。
BCDBoot は、Windows オペレーティング システムを実行するように PC またはデバイス上のブートファイルを 構成するために使用するコマンドライン ツールです。
- [ドライブ名]:
-
カレントドライブを変更します。
例)C:
カレントドライブをCドライブに変更します。
- CD(chdir) - チェンジディレクトリ
-
カレントディレクトリを変更します。
- CD [パス]
-
[パス]で指定したディレクトリにカレントディレクトリを移動します。
相対パス、絶対パスのどちらでも指定可能です。
例)CD windows
- DIR - ディレクトリ
-
ディレクトリの内容(中身)を表示します。
- DIR [パス]
-
[パス]で指定したディレクトリの内容(中身)を表示します。
[パス]を省略しますとカレントディレクトリの中身を表示します。
例)DIR c:\windows
- HELP - ヘルプ
-
コマンドの使い方などを表示します。
例)HELP DIR
単に HELP と入力しますとコマンド一覧を表示します。
- COPY - コピー
-
ファイルをコピーします。
ワイルドカード(*)が使えます。- COPY [コピー元] [コピー先]
-
例1)COPY ABC.C DEF.C
ABC.CというファイルをDEF.Cというファイル名のファイルにコピーします。
例2)COPY *.* c:\abcd
カレントディレクトリのすべてのファイルを Cドライブのabcdディレクトリにコピーします。
例3)COPY ABC.* ..
ABCというファイル名を持つすべての拡張子のファイルを親ディレクトリにコピーします。
- MOVE - ムーブ
-
ファイルを移動します。コピーと異なり、元のファイル名を持つファイルは無くなります。
ワイルドカード(*)が使えます。- MOVE [移動元] [移動先]
-
例1)MOVE ABC.C DEF.C
ABC.CというファイルをDEF.Cというファイル名のファイルに移動します。
例2)MOVE *.* c:\abcd
カレントディレクトリのすべてのファイルを Cドライブのabcdディレクトリに移動します。
例3)MOVE ABC.* ..
ABCというファイル名を持つすべての拡張子のファイルを親ディレクトリに移動します。
- REN(rename) - リネーム
-
ファイル名を変更します。
ワイルドカード(*)が使えます。- REN [変更前ファイル名] [変更後ファイル名]
-
例1)REN ABC.C DEF.C
ABC.CというファイルをDEF.Cというファイル名のファイルに変更します。
例2)REN *.c *.cpp
.cという拡張子名を持つすべてのファイルを.cppという拡張子名に変更します。
- DEL - デリート
-
ファイルを削除します。
ワイルドカード(*)が使えます。- DEL [削除ファイル]
-
例1)DEL ABC.C
ABC.Cというファイルを削除します。
例2)DEL *.*
カレントディレクトリのすべてのファイルを削除します。
例3)DEL ABC.*
ABCというファイル名を持つすべての拡張子のファイルを削除します。
- MD(mkdir) - メイクディレクトリ
-
新規ディレクトリをカレントディレクトリに作成します。
例)MD abcd
abcdというディレクトリをカレントディレクトリに作成します。
- RD(rmdir) - リムーブディレクトリ
-
ディレクトリを削除します。
- RD [パス]
-
指定の[パス]のディレクトリを削除します。
オプションスイッチを合わせて指定することにより[パス]以下のファイル・ディレクトリすべてを削除することもできます。
例)RD abcd
カレントディレクトリにあるabcdディレクトリを削除します。
- CLS - クリアスクリーン
-
画面を消去(クリア)します。
- TYPE - タイプ
-
ファイルの内容を表示します。
- MORE - モア
-
出力を1画面分ずつ表示します。
このコマンドはよく TYPE コマンドなどと併用して使われます。
例)TYPE abc.c | MORE
ファイルabc.cの内容を1画面分ずつ表示します。
- FIND - ファインド
-
指定の文字列を指定のファイル内から検索します。
ワイルドカード(*)が使えます。
例)FIND "string" abc.c
stringという文字列をabc.cというファイル内から検索し、見つかったらその行を表示します。
オプションにより他の動作も指定可能です。
- FC - ファイルコンペア(かな?)
-
2つのファイルを比較します。
例)FC /B abc.c def.c
ファイルabc.cとdef.cの内容をバイナリで比較します。
- WHERE - ウェアー
-
ファイルがどこのパスにあるかを検索します。
検索する場所はカレントディレクトリとパス(環境変数 Path)が通っているフォルダです。 そのためコマンドなどの実行ファイルがどこにあるかを検索するのに用いることができます。
例)WHERE fc.exe
FCコマンドがどこのディレクトリにあるかを検索します。
- PROMPT - プロンプト
-
プロンプトを変更します。
プロンプトとはコマンドラインの入力待ち状態にあるとき、 "C:\>"などと表示されているもののことです。
例)PROMPT $p$g
デフォルトのプロンプトにします。
- TREE - ツリー
-
ディレクトリ構造を表示します。
- EXIT - イグジット
-
cmd.exeを終了します。
以上、よく使いそうなコマンドでした。
ここに挙げたもの以外にもまだまだたくさんのコマンドがあります。
特にネットワーク関連のPINGやIPCONFIGコマンドは知っているとネットワーク関連でトラブった時などに役立つかもしれません。