完全削除の場合
エクスプローラーでは、削除したファイルやフォルダは、ごみ箱に送られるが、キーボードショートカットの「Shift+Del」キーを使うと、ごみ箱へは送られず、選択したファイルやフォルダは完全に削除され、元に戻せない。
また、前述のようにごみ箱の設定で、ごみ箱には保存せず、最初から完全削除するような設定もできる。Windowsでは、ファイルとフォルダは異なるオブジェクトなので、完全削除のAPIもそれぞれ専用のものを使う。基本的に削除は、「ディレクトリ」に対して行うものであり、特殊フォルダの削除は不可能なことがある。これは、特殊フォルダがWindowsの機能の一部となっている場合などだ。
なお、フォルダとディレクトリ、特殊フォルダなどに関しては、過去の以下の記事を参照してほしい。
●Windowsにおけるフォルダーとディレクトリとは
https://ascii.jp/elem/000/004/081/4081147/
●Windowsの「デスクトップ」や「ピクチャ」など、「既知のフォルダ(Known Folders)」を使う方法
https://ascii.jp/elem/000/004/135/4135200/
一般にファイルを削除する場合、Win32APIの「DeleteFile」を使い、ディレクトリでは「RemoveDirectory」を使う。ディレクトリの削除では、対象ディレクトリの中は空になっていなければならない。ディレクトリ内のファイルやサブディレクトリを含めて削除するには、アプリケーションがディレクトリ内を調べていきながら、ファイルやディレクトリをすべて削除する必要がある。
一見簡単に見えるディレクトリの削除だが、実際にはこのようにサブディレクトリやファイルを探してまわり、すべてを削除する必要がある。途中1つでも削除できないファイル、ディレクトリがあると、対象ディレクトリの削除は失敗する。
ファイルやディレクトリの削除は簡単なように見えて、実際には、複雑な仕組みが背後で動く。特にごみ箱を使うか、完全削除するかどうか、ドライブの残り容量が30%以下で挙動が変わることは理解しておいたほうがいいだろう。
本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
-
第546回
PC
Windows 11でBluetoothオーディオ共有(Auracast)を試してみる -
第545回
PC
PowerShellにおけるwinget -
第544回
PC
Windows 11 Ver.26H2プレビュー公開 さらにその次のWindowsも少し見えてきた -
第543回
PC
「WMIC」が消滅 コマンドが消える「WMI」とはそもそも何? -
第542回
PC
PowerToysの最新版では、今使っているアプリの複数ウィンドウをショートカットで切り替えられる便利機能が追加 -
第541回
PC
AIを組み込んだWindowsターミナル「Intelligent Terminal」をインストールして試してみる -
第540回
PC
Windows 11に付属の新しいOutlookでアカウント設定をする -
第539回
PC
Microsoft製の新しいWindows用日本語入力「Copilot Keyboard」を使う -
第538回
PC
PowerShellをシェルとして使うためのポイント【情報表示のやり方】 -
第537回
PC
PowerShellをシェルとして使うためのポイントを解説 - この連載の一覧へ











