YuS_2
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору GCRaistlin Цитата: Ух ты! Да Вы никак разработчик из микрософта, который наваял интерпретатор? Ага, смешно, исходный код... Цитата: А мотивацией было ваше "не можно", разумеется | Можно, конечно, и гланды через пятую точку вырезать... Но если существует более удобный и правильный способ, то городить портянки для обхода ограничений - просто извращение. А главной мотивацией должно быть затраченное время на написание кода. Я потратил несколько минут. Сколько потратили Вы, с учетом времени на отладку - предполагаю, что гораздо больше. Цитата: А, да... ошибся в пересчете. Но, вообще, корректнее было бы сравнивать на одном и том же каталоге разные скрипты, а не на разных машинах. Запустите, плиз, скрипт на своем каталоге: Код: param( [Parameter (Mandatory=$true, Position=1)] [string]$fld, # Корневой каталог [Parameter (Mandatory=$true, Position=2)] [string]$out # Имя файла для вывода ) $watch = [System.Diagnostics.Stopwatch]::StartNew() $watch.Start() #Запуск таймера $err = 'error.txt' if (test-path $out){del $out} if (test-path $err){del $err} function size { process { trap { $error[0] >> $err continue } $fldsize = gci ($_.fullname -replace '(\[|\])','`$1') -rec -force -ea 1|?{!$_.PSIsContainer}|measure -prop length -sum -ea 1 $_.fullname + " - "+"{0:N2}" -f ($fldsize.sum/1Mb) + " Mb" |out-file $out -app } } dir $fld -rec -force|?{$_.PSIsContainer}|size $watch.Stop() #Остановка таймера $watch.Elapsed > startstop_ps_param.txt #Время выполнения | и покажите данные из файла startstop_ps_param.txt Вот моя статистика: Код: Days : 0 Hours : 0 Minutes : 8 Seconds : 14 Milliseconds : 408 Ticks : 4944085182 TotalDays : 0,0057223208125 TotalHours : 0,1373356995 TotalMinutes : 8,24014197 TotalSeconds : 494,4085182 TotalMilliseconds : 494408,5182 | теперь статистика по cmd: отработал за 10 мин., но: сколько он "потерял" каталогов, можете посчитать... | Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 12:59 24-12-2017 | Исправлено: YuS_2, 14:20 24-12-2017 |
|