Windows XPでは、ごみ箱の合計サイズは簡単に確認できますが、Windows 7では表示されません。Microsoftがこの機能を非表示/削除したのはなぜですか?何か不足していますか?
注1: Recyle Binに含めることができる最大サイズを確認する必要はありません。
注2:ごみ箱で複数のファイルを選択すると、ステータスバーに[詳細を表示]リンクが表示されますが、それをクリックしてもファイルの合計サイズは表示されません。Microsoftは明らかにこれを変更しました。
Windows XPでは、ごみ箱の合計サイズは簡単に確認できますが、Windows 7では表示されません。Microsoftがこの機能を非表示/削除したのはなぜですか?何か不足していますか?
注1: Recyle Binに含めることができる最大サイズを確認する必要はありません。
注2:ごみ箱で複数のファイルを選択すると、ステータスバーに[詳細を表示]リンクが表示されますが、それをクリックしてもファイルの合計サイズは表示されません。Microsoftは明らかにこれを変更しました。
回答:
私はこれに出くわしました。
受け入れられた答えは私のニーズを満たしませんでした。すべてのごみ箱のサイズとこれらの合計を知りたいと思いました。
WMIプロバイダーを使用すると、これを簡単に実現 できます(.vbsファイルとして保存)。
dim oFS, oFolder, fileSizeTotal
Dim objWMIService, objItem, colItems, colPartitions, objPartition, _
objLogicalDisk, colLogicalDisks
Dim strComputer, strMessage, strPartInfo,strDeviceID,ret
set oFS = WScript.CreateObject("Scripting.FileSystemObject")
Set oShell = CreateObject( "WScript.Shell" )
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_DiskDrive")
For Each objItem in colItems
strDeviceID = Replace(objItem.DeviceID, "\", "\\")
Set colPartitions = objWMIService.ExecQuery _
("ASSOCIATORS OF {Win32_DiskDrive.DeviceID=""" & strDeviceID & _
"""} WHERE AssocClass = Win32_DiskDriveToDiskPartition")
For Each objPartition In colPartitions
Set colLogicalDisks = objWMIService.ExecQuery _
("ASSOCIATORS OF {Win32_DiskPartition.DeviceID=""" & _
objPartition.DeviceID & _
"""} WHERE AssocClass = Win32_LogicalDiskToPartition")
strPartInfo = strPartInfo & "Disk Partition: " & objPartition.DeviceID
For Each objLogicalDisk In colLogicalDisks
strPartInfo = strPartInfo & " " & objLogicalDisk.DeviceID
ret = ret & objLogicalDisk.DeviceID & "\"
if oFS.FolderExists(objLogicalDisk.DeviceID&"\$Recycle.Bin") then
RECpath=oShell.ExpandEnvironmentStrings( _
objLogicalDisk.DeviceID & "\$Recycle.Bin")
set oFolder = oFS.GetFolder(RECpath)
ShowFolderDetails(oFolder)
else
ret = ret & " -empty- " & vbCr
end if
Next
strPartInfo = strPartInfo & vbCr
Next
Wscript.Echo ret & "---------" & vbCr & "Total: " & calcSize(fileSizeTotal)
Next
WSCript.Quit
Sub ShowFolderDetails(oF)
Dim size
fileSizeTotal = fileSizeTotal + oF.Size
size = calcSize(oF.Size)
ret = ret & " = " & size & vbCr
end Sub
function calcSize(sizeInB)
Dim fSize, iKB, iMB, iGB, d
iKB = 1024
iMB = iKB * 1024
iGB = iMB * 1024
d = 2
if sizeInB >= iGB then
fSize = round(sizeInB/iGB,d) & " GB"
elseif sizeInB >= iMB then
fSize = round(sizeInB/iMB,d) & " MB"
elseif sizeInB >= iKB then
fSize = round(sizeInB/iKB,d) & " KB"
else
fSize = sizeInB & " B"
end if
calcSize = fSize
end function
またはここから入手してください:http : //dl.dropbox.com/u/32933085/RecycleBinInfo.vbs
編集: パーティションにごみ箱がなくてもクラッシュしないようにスクリプトを更新しました。また、バイトが正しく表示されるようになりました
ごみ箱をアイテムタイプで並べ替えてから、すべてのファイルを選択します。ディレクトリは選択しないでください。詳細情報を表示すると、下部にすべてのファイルのサイズが表示されます。
別の方法は、システムルートにある$ Recycle.binと呼ばれるすべての隠しシステムフォルダーを選択し、選択の詳細またはプロパティを表示することですが、上記の方法ではうまくいくはずです...
DIR /S %SYSTEMDRIVE%\$RECYCLE.BIN | FINDSTR /C:File(s)
上記のコマンドの最後のエントリを参照して、コマンドプロンプトからごみ箱のサイズを取得します。
なぜごみ箱のサイズを知ることが重要なのか疑問に思います。獲得するスペースの量を知りたい場合は、ディスククリーンアップまたは同様のツールを使用する方が良いですが、削除されたアイテムを削除するだけでは不要です。異なるごみ箱を調べる必要があるため、彼らはその機能を省いたと思いますが、実際には、余分な努力を払って実装するのは難しくありません...
DIR /S %SYSTEMDRIVE%\$RECYCLE.BIN | FINDSTR /C:File(s)
ディスククリーンアップは良好です。セージモードで実行してください。
マイクロソフトがこれらすべての長さに行き、XPのごみ箱が持っていた機能を実装するだけの人の手間を省いてくれたら良かったでしょう。残念な。
私が見つけることができる最も簡単な解決策は次のとおりです:
$Recycle.Bin
フォルダーを開いて、右クリックして、表示されるごみ箱アイコンのプロパティを選択します。これにより、合計サイズが表示されます。
Microsoftフォーラム(こことここ)で、ディスククリーンアッププログラムを実行すると、ごみ箱内のすべてのファイルの合計サイズが提供されることが提案されました。Windows XPで以前に実装された方法に類似した直接的なアプローチはありません。
It would have been good if MS would save us people trouble to go to all these lengths and just implement the functionality the XP recycle bin had. How difficult it would be to copy old code into the new version anyways?
WinDirStatは、ごみ箱のサイズを計算し、HD上のすべてのファイルとそのスペースの使用状況をグラフィックで表示します。ドライブのスペースがどこに行ったのかを把握しようとしている場合は、エクスプローラを使用してただ動き回るよりもはるかに優れています。
私にはWindows 7があり、ごみ箱を空にすると解放されるスペースの量を見つけることができないという問題もありました。上記の提案を読んだ後、選択にフォルダを含めない場合にのみ、ごみ箱のすべてのファイルを選択した場合、Windows 7は合計サイズを表示することがわかりました。フォルダサイズは、各フォルダを開いて上記のようにファイルを選択することで決定できます。
参考までに(誰もin辱するつもりはありません):ごみ箱を開いた後にすべてのファイルを選択するには、CTRLボタンを押して「A」を押します。すべてを選択した後にフォルダーの選択を解除するには、CTRLボタンを押しながらフォルダーをクリックします。フォルダーの選択を解除すると、サイズが下部に表示されます。
残念ながら、ごみ箱に多数のフォルダがある場合、これらを個別にクリックしてから、手動でサイズを追加してごみ箱の合計サイズを取得する必要があります。したがって、この場合、前に提案したように、Cドライブの$ Recycle.Binフォルダーで右クリック/プロパティを実行する方が簡単かもしれません。
Windows 7:ごみ箱の合計サイズを表示する方法
Windows XPでは、ごみ箱の合計サイズは簡単に確認できますが、Windows 7では表示されません。Microsoftがこの機能を非表示/削除したのはなぜですか?何か不足していますか?
いいえ、あなたは何も見逃していません。何らかの未知の理由で、Microsoftは恐ろしいUI / UXの決定を下し、Vista以降でリサイクルされたファイルとフォルダーのサイズを確認することを困難/不便/不可能にすることにしました。
備考1:Recyle Binに含めることができる最大サイズを確認する必要はありません。
もちろん、実際のファイルとフォルダーのサイズを知る必要はありません。たとえば、大量のものを削除する場合、どのくらいのスペースを解放するかを確認できるようにします。さらに、リサイクルされたファイルとフォルダーの特定のセットがどれだけ使用していたかを知る必要があるかもしれません。
注2:ごみ箱で複数のファイルを選択すると、ステータスバーに[詳細を見る]リンクが表示されます
15を超えるファイルに関する情報を表示することをWindowsが拒否することは、もう1つの難解な設計上の選択肢です。さらに悪いことに、
ただし、それをクリックしても合計ファイルサイズは表示されません。Microsoftは明らかにこれを変更しました。
Explorerとごみ箱に関する他のすべての問題に加えて、それは単に完全に壊れています。エクスプローラーにバグがあり、ショートカットまたはフォルダーが1つでも選択されている場合、ごみ箱に選択されたアイテムのサイズが表示されないことがあります。これは、それらの一つでも、ショートカットやフォルダの場合は、エクスプローラのサイズが表示されません、あなたが選択したどのように多くの項目問題ではないすべてで、それは明確にあたり、それらのアイテムの大きさを知っているにもかかわらず、サイズに次の列をそれら。
とにかく、あなたが望むのは解決策です。これは、最も簡単な解決策は、フリーシェルエンハンサーを使用することであることが判明したクラシックシェルを意図され、修正し、それは誰もが、ほとんどの部分は満足していたXPであったかにシェルを復元してWindowsを。改善された他のすべての機能に加えて、復元される機能の1つは、ごみ箱にサイズを表示する機能です。選択されている項目や選択されている項目の数に関係なく、選択されたすべての項目のサイズが表示されます(図1)。
図1:クラシックシェルがインストールされたWindows 7のごみ箱のスクリーンショット。ショートカットとフォルダーを含む21個の選択されたごみ箱のサイズを示しています。