web-dev-qa-db-ja.com

XPで非常に大きなディレクトリの削除を高速化するにはどうすればよいですか?

私は定期的に信じられないほど巨大なディレクトリを自分のXPマシンにチェックアウトしています。それらを削除して最終的にゴミ箱に移動することになると、永遠にかかります。このプロセスをスピードアップする方法はありますか?

9
Christek

私は通常、コマンドラインから巨大なディレクトリを削除します。ゴミ箱をバイパスし、通常ははるかに高速です。本当に重要なものを誤って削除しないように、注意して、入力したコマンドを2回確認する必要があります。

最も簡単な方法は、rmdirを使用することです。

rmdir /S /Q C:\My\Directory\Name

rmdirが確信があるかどうかを尋ねるのを止めるには、/Qが必要です。

一部のファイルが現在何らかのプロセスで開かれている場合、それらのファイルとそれらに含まれるディレクトリは自然に削除されません。どのプロセスがファイルをロックするかを理解するのに役立つツールがありますが、これはこれとは別の話です。

8
piggymouse

最悪の方法はごみ箱に送ることです:あなたはまだそれらを削除する必要があります。次に悪いのは、WindowsエクスプローラーでのShift + Deleteです。何かを削除し始める前に、内容を確認するのに多くの時間を浪費します。

次善の策は、コマンドラインからrmdir /s/q foldernameを使用することです。 del /f/s/q foldernameも良いですが、ディレクトリ構造が残ります。

私が見つけた最高のものは、ファイルを削除するための最初のパスとnulへの出力を備えた、2行のバッチファイルであり、すべての単一ファイルの画面への書き込みのオーバーヘッドを回避します。次に、2回目のパスで、残りのディレクトリ構造をクリーンアップします。

del /f/s/q foldername > nul
rmdir /s/q foldername

これは、Windows XP暗号化ディスク、最大30GB/1,000,000ファイル/ 15,000フォルダーの削除:rmdirは約2.5かかります時間、del+rmdirは約53分かかります。詳細 ここ

これは私にとって通常のタスクなので、通常、削除する必要があるものをC:\ stufftodeleteに移動し、それらのdel+rmdirコマンドをdeletestuff.batバッチファイルに入れます。これは夜間に実行するようにスケジュールされていますが、日中に実行する必要がある場合もあるので、速いほど良いです。

5
Hugo

押す SHIFTDELETE ごみ箱をスキップしながらファイル/ディレクトリを削除します。

注:これらのファイルを回復することはできませんが、より高速です。

4
th3dude

ごみ箱をバイパスしたい場合は、Shiftキーを押しながら削除するだけです。また、コマンドラインのdelコマンドの方がエクスプローラーで削除するよりも速い場合があります。削除するフォルダが常に同じである場合は、そのフォルダのバッチファイルを設定します。

それが適切であれば、定期的に発生するようにスケジュールすることもできます。

2
Col

開始する前にゴミ箱を非アクティブ化すると役立つ場合があります。

0
Martin

これをテストするのに便利な巨大なディレクトリがありません。購入してみてください。 shift+delete ファイルを削除します。この手順では、ごみ箱をスキップします。これにより、時間を節約できます。

0
Ryan

あなたがこれを定期的に行っていて、状況が正しい場合は、これが壁から外れた提案です。

ディレクトリを別のディスクパーティションに保存します。利点は、パーティションを非常に迅速に(ほぼ瞬時に)破棄して再作成できることです。

Partition Magicのようなものを使用/信頼しない限り、パーティションサイズが固定されているなどの明らかな制限があります。ただし、頻繁に更新される非常に大きなSDKを処理する場合は、この手法を使用しました。

0
tonylo

ゴミ箱を空に近づけてください。アイテムを完全なゴミ箱に入れるには、はるかに長い時間がかかります。

Windowsは、アイテムがいっぱいになるまで、アイテムをすばやくゴミ箱に移動します。その後、新しいアイテムのためのスペースを作るために、ゴミ箱にある最も古いアイテムを削除する必要があります。このプロセスは非常に遅いです。

0
Chris Nava

FastCopy 削除オプションが含まれています。自分ではあまり試していませんが、すぐに使えるかもしれません。

0
Andreas