Архив за месяц: Январь 2014

CSV отчет о размере папок на жестком диске с помощью PowerShell

В $source указываем буквы дисков которые надо просканировать

Создаем каталог c:\Reports\ или указываем свой путь в Export-CSV

Сам скрипт:

$source= "D:\","F:\"
$time = Get-Date
 
$result = @()
foreach($d in $source)
{
	Get-ChildItem $d | where {$_.psIscontainer} | Foreach {
		$r = robocopy $_.FullName c:\dummy /l /xj /e /nfl /ndl /njh /bytes /r:0
		$data = $r -match "(Файлов|Байт)" -replace "\s+(Файлов|Байт)\s+:\s+" | Foreach {$_.split(" ")[0]}
		$result += New-Object PSObject -Property @{Folder=$_.FullName;Files=$data[0];"Size(mb)"=$data[1]/1mb;"Size(Gb)"=$data[1]/1gb}
	}
} 
 
$result | Select Folder,"Size(Gb)","Size(mb)",Files |  
	Export-CSV -NoType "c:\Reports\shd-$($time.ToString('ddMMyy')).csv" -Delimiter ";" -Encoding UTF8

ЗЫ: (8ТБ проанализировал за 15 минут)

Экспортировать всех пользовтелей Exchange Server 2010 в PST

foreach ($i in (Get-Mailbox -ResultSize Unlimited)) { New-MailboxExportRequest -Mailbox $i -FilePath "\\SHARE\PST\$($i.Alias).pst" }