Windowsでフォルダーやファイルを完全消去するなら「SDelete」

Windowsでフォルダーやファイルを完全消去するなら「SDelete」

Windows環境でフォルダーやファイルを削除した場合、通常は一旦ごみ箱に移動され、ごみ箱を空にした時点でそれらのフォルダーやファイルは消去され、通常の操作では復元できなくなります。

ですが、専用のデータ復元ツールを利用すれば、ごみ箱から消去されて間もないファイルは意外と簡単に復元できてしまいます。

一般的なファイルであれば、たとえ復元されてもそれほど困りはしませんが、企業秘密などが記録されたファイルを消去するときは、万が一にも復元されないよう万全を期したいところです。

そこでここでは、Microsoftが提供するSysinternalツールの一つ「SDelete」を使って、フォルダーやファイルを復元できないよう完全消去する方法を紹介します。

この記事は、以下の環境で実行した結果を基にしています。他のエディションやバージョンでは、動作結果が異なる場合があることをご了承ください。

ソフトウェアバージョン
Windows 10 Pro 64bit22H2
SDelete2.04

SDeleteとは

SDeleteは、Microsoftが提供している「Windows Sysinternals」に含まれるツールで、フォルダーやファイルを完全消去したり、ドライブの空き領域を完全消去できるコマンドラインツールです。

SDeleteツールは、以下のWebページからダウンロードできます。

SDelete - Sysinternals | Microsoft Learn

Windowsでフォルダーやファイルを完全消去するなら「SDelete」

ダウンロードしたZIPファイルを展開して、任意のフォルダーに配置したら準備完了です。

Windowsでフォルダーやファイルを完全消去するなら「SDelete」

SDeleteツールの使い方

SDeleteを使ってフォルダーやファイルを完全消去する手順は、以下のとおりです。

SDeleteツールはコマンドラインツールのため、フォルダーやファイルを完全消去するときは、コマンドプロンプトやPowerShellから利用します。

Memo

32bit版のWindowsでは「sdelete.exe」、64bit版のWindowsでは「sdelete64.exe」を利用します。

たとえば「D:¥test\file1.txt」を完全消去するときは、以下のように実行します。

> sdelete64.exe -nobanner "D:\test\file1.txt"

Windowsでフォルダーやファイルを完全消去するなら「SDelete」

「D:\test」フォルダーとサブフォルダーを含めて完全消去するときは、以下のように実行します。

> sdelete64.exe -nobanner -s "D:\test"

Windowsでフォルダーやファイルを完全消去するなら「SDelete」

複数のフォルダーやファイルを一括で完全消去したいときは、以下のようにバッチファイル化するのがおすすめです。

下のバッチファイルでは、ドラッグ&ドロップしたフォルダーやファイルを一括で完全消去できます。

@echo off
setlocal enabledelayedexpansion
set d=%~dp0
set logfile=%d%%~n0.log
set sdelete-path=D:\sdelete\sdelete64.exe

echo %date:/=%%time::=% >>%logfile%

for %%A in (%*) do (
  set attr=%%~aA
  if "!attr:~0,1!"=="d" (%sdelete-path% /s "%%A" >>%logfile%)
  if "!attr:~0,1!"=="-" (%sdelete-path% "%%A" >>%logfile%)
)
endlocal

なお、ファイル名に日本語が含まれるいると、ファイル単体での処理が正常に実行できないため、そのようなファイルは、フォルダーにまとめた上でバッチファイルにドラッグ&ドロップすれば正常に処理できます。

おまけ

ちなみに、SDeleteツールでは既存のデータに影響を与えることなく、ドライブの空き領域だけを完全消去することもできます。

たとえば、Dドライブの空き領域を完全消去するときは、以下のように実行します。

> sdelete64.exe -nobanner -z D:

Windowsでフォルダーやファイルを完全消去するなら「SDelete」

なお、ドライブの空き領域の完全消去には、数時間またはそれ以上かかることがあるのでご留意ください。

あとがき

フォルダーやファイルを完全消去する場合、サードパーティーのGUIツールを利用するのが一般的ですが、コマンドラインツールで対応したい場合はSDeleteツールがおすすめです。Microsoft製という安心感もありますし。