このエントリーをはてなブックマークに追加


ファイルの削除を行う・del, erase

コマンドプロンプトでファイルの削除を行う場合、delまたはeraseコマンドを使用します。
以下にdel, eraseコマンドの使用例を記します。


del, eraseコマンドの違い

del, eraseコマンドの違いはありません。
delコマンドのヘルプを見たところ、del, erase両方の使い方が表示されました。

C:\Users\sakura>del /?
ファイル (複数可) を削除します。

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

  名前          ファイルまたはディレクトリ (複数可) の一覧を指定します。
                複数のファイルを削除するときはワイルドカードを使用します。
                ディレクトリが指定されたときはディレクトリ内のすべてのファ
                イルは削除されます。

  /P            各ファイルを削除する前に確認のメッセージを表示します。
  /F            読み取り専用ファイルを強制的に削除します。
  /S            指定されたファイルをすべてのサブディレクトリから削除します。
  /Q            ワイルドカードを使用して一括削除するときに、確認のメッセージ
                を表示しません。(QUIET モード)
  /A            属性により削除するファイルを選択します。
  属性          R  読み取り専用            S  システム ファイル
                H  隠しファイル            A  アーカイブ
                I  非インデックス対象ファイル  L  再解析ポイント
                -  その属性以外

コマンド拡張機能を有効にすると、DEL と ERASE は次のように変更されます:

/S スイッチの表示形式が逆になり、見つからなかったファイルではなく
削除されたファイルだけが表示されるようになります。

del, eraseコマンドを使用するときの注意点

del, eraseコマンドでワイルドカード指定でファイルを削除する場合は、はじめにdirコマンドを実行して削除対象ファイルを確認すると意図しないファイルを削除してしまうことを防ぐことができます。

C:\Users\sakura\Desktop\delcmd>dir
<snip>
2012/06/17  14:45    <DIR>          .
2012/06/17  14:45    <DIR>          ..
2012/06/17  14:45                 4 01.txt
2012/06/17  14:45                 4 02.txt
2012/06/17  14:45                 4 03.txt
2012/06/17  14:45                 4 1.txt
2012/06/17  14:45                 4 2.txt
2012/06/17  14:45                 4 3.txt
              6 個のファイル                  24 バイト
              2 個のディレクトリ  76,022,657,024 バイトの空き領域
C:\Users\sakura\Desktop\delcmd>dir 0?.txt
<snip>
C:\Users\sakura\Desktop\delcmd のディレクトリ

2012/06/17  14:45                 4 01.txt
2012/06/17  14:45                 4 02.txt
2012/06/17  14:45                 4 03.txt
              3 個のファイル                  12 バイト
              0 個のディレクトリ  76,022,657,024 バイトの空き領域

上記の場合、dir 0?.txtで削除したい対象があっているかどうか確認したあと、del 0?.txt コマンドを実行すれば、間違って対象外のファイルを削除する操作ミスが減ると思います。

指定したディレクトリ配下のファイルのみすべて削除する方法

以下のディレクトリおよびファイルがあった場合、fooディレクトリ配下のファイルおよびディレクトリをすべて削除するには/Sオプションを使用します。

  • 実行前
    C:\Users\sakura\Desktop>tree /f foo
    フォルダー パスの一覧:  ボリューム win7hdd
    ボリューム シリアル番号は 3EA0-EC76 です
    C:\USERS\SAKURA\DESKTOP\FOO
    ├─bar1
    │  │  bar1.txt
    │  │
    │  ├─hoge1
    │  │      hoge1.txt
    │  │
    │  └─hoge2
    │          hoge1.txt
    │
    └─bar2
        │  bar2.txt
        │
        ├─hoge3
        │      hoge3.txt
        │
        └─hoge4
                hoge4.txt
  • 実行その1 (/Sオプションのみ指定) 削除するかしないかの確認メッセージが表示されます。
    C:\Users\sakura\Desktop>del /s foo
    C:\Users\sakura\Desktop\foo\*、よろしいですか (Y/N)?
  • 実行その2 (/Sオプションおよび/Qオプションを指定)
    /Qオプションにより確認メッセージが表示されなくなります。
    ファイルのみ削除されました。(ディレクトリは残っている)
    C:\Users\sakura\Desktop>del /s /q foo
    削除したファイル - C:\Users\sakura\Desktop\foo\bar1\bar1.txt
    削除したファイル - C:\Users\sakura\Desktop\foo\bar1\hoge1\hoge1.txt
    削除したファイル - C:\Users\sakura\Desktop\foo\bar1\hoge2\hoge1.txt
    削除したファイル - C:\Users\sakura\Desktop\foo\bar2\bar2.txt
    削除したファイル - C:\Users\sakura\Desktop\foo\bar2\hoge3\hoge3.txt
    削除したファイル - C:\Users\sakura\Desktop\foo\bar2\hoge4\hoge4.txt
C:\Users\sakura\Desktop>tree /f foo
フォルダー パスの一覧:  ボリューム win7hdd
ボリューム シリアル番号は 3EA0-EC76 です
C:\USERS\SAKURA\DESKTOP\FOO
├─bar1
│  ├─hoge1
│  └─hoge2
└─bar2
    ├─hoge3
    └─hoge4

ディレクトリを含めて削除したい場合は、rd, rmdirを利用すれば可能となります。

関連資料



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:49:30