一定期間後に古いファイルをごみ箱から削除するExplorerアドオンが必要です。
たとえば、制限時間を30日に設定するとします。 Windowsでファイルを削除すると、ソフトウェアはその削除時間の記録を保持します。毎日、経過時間が30日に達した削除済みファイルをスキャンし、存在する場合は削除します。
このようなソフトウェアはありますか?
RecycleBinExは、Windows向けのシンプルなアプリケーションで、ユーザーの要求に正確に応えます。参照: http://www.fcleaner.com/recyclebinex
Mac OSXでは、Hazelが同じことを行います(他のものも同様です): http://www.noodlesoft.com/
KDEプラズマこの機能はデフォルトで出荷されますです。KDEでKubuntu、Arch、Chackra Linux、またはその他のディストリビューションを実行している場合は、すでにこの機能を利用できます。 Dolphin設定ウィンドウを見てください。
Ubuntu Unity、Gnome、または標準のFreeDesktop.org Trash機能を提供するその他のgnu/linuxデスクトップ環境では、AutoTrashを使用してこのことを実行できます: http://www.logfish.net/pr/autotrash /
同様の動作はtrash-cliでも実行できます。これは、コマンドラインから直接ファイルをゴミ箱に送信するためにも使用できます。参照: https://github.com/andreafrancia/trash-cli
そこにあるほとんどのメールアプリにも、「ゴミ箱」用のこの機能があります。
Androidデフォルトでは「ゴミ箱」はありません(削除すると永久に削除されます)が、Dumpsterのようなアプリをインストールできます(どういうわけか)同様の機能を取得: http://www.dumpsterapp.mobi/
上記のように、古いファイルをゴミ箱から自動的に削除することは素晴らしい機能にすることだと思いますもっと使いやすく混乱を減らすので(3か月間ゴミ箱に移動したファイルです)以前はまだあなたに関係がありますか?そして同じファイルのそれらの古いリビジョンすべて?)そしてあなたが回復したいものを見つけやすくします(これが結局私たちのコンピュータに「ゴミ箱」がある理由です)、それでも安全です。
テキストファイル(コードまたは散文)を頻繁に使用する場合、ほとんどの場合は小さく、多くのスペースを必要としないため、さらに便利です(ごみ箱のクォータに到達しない可能性があります)。これにより、定期的に「ごみ箱を空にする」必要がなくなります。必要に応じて、「ごみ箱」にあるファイルを回復するための時間枠があることを知っているだけです。
そこにあるほとんどのクラウドサービス(Dropbox、Google Drive、Simplenoteなど)を見ると、それらのほとんどは削除されたファイルに対して同様のポリシーを持っているようです。私はそれがあなたのファイルを扱う正しいことだと本当に思っています、そして彼らはそう思っているようです。
Explorerアドオンは知りませんが、Windowsのほとんどの機能と同様に、これはPowerShellで実行できます。
ForEach ($Drive in Get-PSDrive -PSProvider FileSystem) {
$Path = $Drive.Name + ':\$Recycle.Bin'
Get-ChildItem $Path -Force -Recurse -ErrorAction SilentlyContinue |
Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-30) } |
Remove-Item -Recurse
}
このスクリプトを、.ps1
拡張子の付いたテキストファイルとして保存します。タスクスケジューラを使用して、これを定期的に実行できます。
ただし、最初にPowerShellスクリプトの実行を許可する必要があります。デフォルトでは、PowerShellプロンプトに直接入力されたコマンドしか実行できないためです。これを行うには、PowerShellを開き、次のコマンドを入力します。
Set-ExecutionPolicy RemoteSigned
プロンプトが表示されたら、「y」または「yes」と入力します。詳細は Get-Help Set-ExecutionPolicy
を参照してください。
次に、タスクスケジューラを開き、次のパラメータを使用して新しいタスクを作成します。
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
に設定します-NonInteractive -File "C:\path\to\script.ps1"
に設定しますスクリプトの行ごとの説明:
ForEach ($Drive in Get-PSDrive -PSProvider FileSystem) {
これは、コンピューター内のすべてのドライブのリストを取得し、それらを1つずつループします。 -PSProvider FileSystem
パラメータは、ディスクドライブのみを返すために必要です。PowerShellには、レジストリハイブなどの他のさまざまなもののための疑似ドライブもあるからです。
詳細については、 Get-Help Get-PSDrive
および PowerShellでのループ処理に関するこのチュートリアル を参照してください。
$Path = $Drive.Name + ':\$Recycle.Bin'
これにより、現在のドライブのごみ箱フォルダーへのパスが作成されます。 PowerShellが$Recycle
を変数として解釈しないように、2番目の部分を一重引用符で囲んでいることに注意してください。
Get-ChildItem $Path -Force -Recurse -ErrorAction SilentlyContinue |
これにより、指定したパス(前のコマンドで作成したパス)の下にあるすべてのファイルとサブフォルダーが返されます。 -Force
パラメータは隠しフォルダとシステムフォルダに移動するために必要であり、-Recurse
パラメータはコマンドを再帰的にします。すべてのサブディレクトリもループします。 -ErrorAction
は、ほとんどのPowerShellコマンドの標準パラメーターであり、値SilentlyContinue
は、コマンドでエラーを無視します。これの目的は、ファイルをすぐに削除するように構成されているドライブのエラーを防ぐことです。最後の|
記号は、結果を次のコマンドにパイプします。読みやすくするために数行に分割しています。
詳細については、 Get-Help Get-ChildItem
を参照してください。
Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-30) } |
これは単に、前のコマンドの結果をフィルタリングし、30日より古いもののみを返します。 $_
は現在処理中のオブジェクトを示し、この場合のLastWriteTime
プロパティはファイルが削除された日時を示します。 Get-Date
は現在の日付を返します。
詳細については、 Get-Help Where-Object
および Get-Help Get-Date
を参照してください。
Remove-Item -Recurse
これは、前のコマンドで渡されたアイテムを削除するだけです。 -Recurse
パラメータは、空でないサブフォルダの内容を自動的に削除します。それがないと、そのようなフォルダを要求するプロンプトが表示されます。
詳細については、 Get-Help Remove-Item
を参照してください。
Windowsのごみ箱が最大サイズに達すると、古いファイルは自動的に削除されます: ごみ箱が割り当てられたスペースを使い果たすとどうなりますか?
これは、Recylce Binのプロパティから制御できます。