2013-11-13 6 views
0

У меня есть необходимость и не удалось найти вопрос, связанный с тем, что я намереваюсь достичь. Я пытаюсь получить скрипт (либо PowerShell, либо DOS WMI), чтобы получить общий размер корзины, но там, где есть несколько дисков.Получить общий размер Корзины

Я попытался использовать эту командную строку DIR /S %SYSTEMDRIVE%\$RECYCLE.BIN | FINDSTR /C:File(s), но это показывает только размер использования корзины на диске C :, но мне нужно также получить размер для других дисков на каждом сервере, независимо от используемых букв диска.

Я проверил Script Guy, но не смог найти близко к нему.

+0

Я думаю, что ответ на @ArchGriffin даст вам все, что нужно для начала работы: http://stackoverflow.com/ вопросы/11689023/delete-contents-of-w2k3-recycle-bin –

+0

Теперь взгляните на это – Chelseawillrecover

ответ

4

Я использую "Get-RecycleBinSize" сценарий из http://gallery.technet.microsoft.com/scriptcenter/Get-RecycleBinSize-092f15c7

Это фантастика. Я тестировал его против 2003, 2008, 2008 R2 и 2012. Он возвращает объект для каждой корзины (т. Е. С помощью диска и учетной записи пользователя). Пример:

Get-RecycleBinSize -ComputerName server01 

Computer : server01 
Drive : C: 
User  : Domain\username 
BinSID : S-1-5-21-1231231234-1231231234-1231231234-12345 
Size  : 20 

Возвращаемый размер находится в КБ, поэтому вы можете сделать некоторые форматирования на этом.

Хотя я использую его для целей отчетности, я также включил его в сценарий, который отправляет сообщения пользователям по электронной почте, когда их корзина превышает определенный размер, чтобы попросить их их опорожнить. Тем не менее, вы можете принудительно удалить его с помощью непустого параметра.

Чтобы получить общее пространство, используемое сервером можно запустить следующим образом:

Get-RecycleBinSize -ComputerName server01 | % { $totalspace = $totalspace + [System.Math]::Round($_.Size/1MB,0) } 
$totalspace 
+0

Техническая способность «контролировать» не равна процедурной практике. Кроме того, это не имеет отношения к этому вопросу. Я приводил пример того, как это можно * продлить дальше. Это решение использует PowerShell и не требует явно определенных объектов оболочки. Если вы считаете, что скрипт можно улучшить, используя их, пожалуйста, свяжитесь с автором на странице технолога. С уважением, Робин – Robin

+0

@Rob это был один из первых скриптов, которые я пробовал, но он не запускается. Нет ошибки на выходе. Вы тестировали с помощью консоли DOS или PowerShell? – Chelseawillrecover

+0

@Chelseawillrecover Я запускал это прямо из консоли PowerShell. Вы можете вызвать PowerShell и скрипт из DOS, но я бы не рекомендовал его, если вы можете его избежать. Как вы пытаетесь запустить его? – Robin

Смежные вопросы