ファイルの削除(DEL, ERASE)

DEL コマンドまたは ERASE コマンドを使用するとファイルを削除することができます。ここではコマンドプロンプトにおける DEL コマンドおよび ERASE コマンドの使い方について解説します。

(Last modified: )

DELコマンドの使い方

DEL コマンドを実行すると対象のファイルを削除することができます。書式は次の通りです。

DEL [/P] [/F] [/S] [/Q] [/A[[:]属性]] 名前

DLE コマンドの引数として削除する対象のファイル名を指定します。

なお ERASE コマンドを使っても同じ結果となります。

ERASE [/P] [/F] [/S] [/Q] [/A[[:]属性]] 名前

ファイルを削除する

カレントディレクトリにある memo.txt を削除するには次のように実行します。

del memo.txt

ファイルを削除する(1)

変更前のカレントディレクトリには次のようなファイルがありました。

ファイルを削除する(2)

DEL コマンド実行後、 memo.txt が削除されているのが確認できます。

ファイルを削除する(3)

-- --

DEL コマンドの引数には複数のファイルを指定することもできます。複数のファイルを削除する場合は区切り文字として空白を使いファイル名を指定してください。例えばカレントディレクトリにある memo.txt と diary.txt を削除するには次のように実行します。

del memo.txt diary.txt

ファイルを削除する(4)

変更前のカレントディレクトリには次のようなファイルがありました。

ファイルを削除する(5)

DEL コマンド実行後、 memo.txt と diary.txt が削除されているのが確認できます。

ファイルを削除する(6)

-- --

DEL コマンドを実行してファイルが削除されるときに確認メッセージを表示するには「/P」オプションを使用します。例えばカレントディレクトリにある memo.txt を削除する時にメッセージを表示するには次のように実行します。

del /p memo.txt

DEL コマンドを実行すると「xxx を削除しますか (Y/N)?」と確認メッセージが表示されます。

ファイルを削除する(7)

削除する場合には[y]キーを押したあとで[Enter]キーを押してくださいい。対象のファイルが削除されます。

ファイルを削除する(8)

ワイルドカードを使って削除するファイルを指定する

DEL コマンドの引数にはワイルドカードを使用することもできます(ワイルドカードについては「ワイルドカードの使い方」を参照されてください)。

例えばカレントディレクトリにある拡張子が .txt のファイルをすべて削除するには次のように実行します。

del *.txt

ワイルドカードを使って削除するファイルを指定する(1)

変更前のカレントディレクトリには次のように .txt の拡張子のファイルが 2 つと、 .webp の拡張子のファイルが 1 つありました。

ワイルドカードを使って削除するファイルを指定する(2)

DEL コマンド実行後、 .txt の拡張子のファイルがすべて削除されているのが確認できます。

ワイルドカードを使って削除するファイルを指定する(3)

-- --

ワイルドカードを使いすべてのファイルを削除する場合には「/P」オプションを使用していなくても確認のためにメッセージが表示されます。「del *.*」や「del *」などです。

例えばカレントディレクトリにあるすべてのファイルを削除する場合には次のいずれかを実行します。( del * であっても del *.* であっても対象のファイルに拡張子があってもなくてもすべてのファイルが削除されます)。

del *.*

del *

DEL コマンドを実行すると「*.*、よろしいですか (Y/N)?」と確認メッセージが表示されます。

ワイルドカードを使って削除するファイルを指定する(4)

削除する場合には[y]キーを押したあとで[Enter]キーを押してください。すべてのファイルが削除されます。

ワイルドカードを使って削除するファイルを指定する(5)

なおカレントディレクトリにあるサブディレクトリや、サブディレクトリの中にあるファイルは削除されません。

なおワイルドカードを使ってすべてのファイルを削除する場合に確認メッセージを表示しないようにするには「/Q」オプションを使用して次のように実行します。

del /q *.*

確認メッセージが表示されずに DEL コマンドを実行されてカレントディレクトリにあるすべてのファイルが削除されます。

ワイルドカードを使って削除するファイルを指定する(6)

削除されたファイルは元に戻すことができません。誤動作を未然に防ぐためにも「/Q」オプションの使用はおすすめしません。

ディレクトリを指定してディレクトリに含まれるファイルを削除する

DEL コマンドの引数にディレクトリ名を指定した場合、ディレクトリに含まれるファイルがすべて削除されます。例えばカレントディレクトリの中にある doc ディレクトリに含まれるファイルをすべて削除するには次のように実行します。

del back

これは次のように実行した場合と同じです。

del back\*.*

ワイルドカードですべてのファイルを削除した場合と同じ扱いになるため、この DEL コマンドを実行すると「doc\*、よろしいですか (Y/N)?」と確認メッセージが表示されます。

ディレクトリを指定してディレクトリに含まれるファイルを削除する(1)

削除する場合には[y]キーを押したあとで[Enter]キーを押してくださいい。指定したディレクトリに含まれるすべてのファイルが削除されます。

ディレクトリを指定してディレクトリに含まれるファイルを削除する(2)

この場合も、指定したディレクトリの中にサブディレクトリがある場合、サブディレクトリやサブディレクトリに含まれるファイルは削除されません。

サブディレクトリの中のファイルも含めて削除する

DEL コマンドを実行する時にカレントディレクトリまたはディレクトリを指定した時、サブディレクトリの中のファイルも含めて削除するには「/S 」オプションを使用します。

例えばカレントディレクトリとそのサブディレクトリを含めて拡張子が .bak のファイルをすべて削除するには次のように実行します。

del /s *.bak

サブディレクトリの中のファイルも含めて削除する(1)

/S オプションをつけて DEL コマンドを実行すると、削除したファイルの一覧が表示されます。

DEL コマンド実行前に TREE /F コマンドを使って確認すると、カレントディレクトリとサブディレクトリ内に拡張子が .bak のファイルは 3 つ存在しました。

サブディレクトリの中のファイルも含めて削除する(1)

DEL コマンドを実行後に確認すると、 .bak の拡張子を持つ 3 つのファイルがサブディレクトリにあるモノも含めてすべて削除されているのが確認できます。

サブディレクトリの中のファイルも含めて削除する(2)

読み取り専用ファイルを強制的に削除する

読み取り専用属性が設定されたファイルを DEL コマンドで削除しようとすると「アクセスが拒否されました。」と表示されて削除することができません。

del diary.txt

読み取り専用ファイルを強制的に削除する(1)

読み取り専用属性が設定されたファイルを DEL コマンドで削除するには「/F」オプションを使用して次のように実行します。

del /f diary.txt

読み取り専用ファイルを強制的に削除する(2)

読み取り専用属性が設定されたファイルも DEL コマンドで削除することができました。

-- --

DEL コマンドを使ってファイルを削除する方法について解説しました。

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。