Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Сценарии для Windows

Модерирует : KLASS, IFkO

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

iNNOKENTIY21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
#region Puzzle 1

# Показать название и размер в мегабайтах для десяти самых больших файлов
# в каталоге «C:\Windows\System32»

# Параметры для Get-ChildItem
$Params = @{
   Path        = "$env:SystemRoot\System32"
   File        = $true
   Force       = $true
   ErrorAction = "SilentlyContinue"
}

# Набор файлов согласно параметрам
$Items = @(Get-ChildItem @Params)

# Сортировка набора файлов по свойству Length
[array]::sort($Items.ForEach('Length'), $Items)

# Свойства имя и размер (форматированный в мегабайты), у последних 10 файлов
$Result = @($Items[-10..-1].ForEach{
   [PSCustomObject] @{
       Name       = $_.Name
       "Size, MB" = [math]::round($_.Length/1MB, 2)
   }
})

# Обратная сортировка
#[array]::Reverse($Result)

# Вывод
$Result

#endregion Puzzle 1

#region Puzzle 2

# Показать список (в четыре колонки) файлов с расширением «.dll» из каталога
# «C:\Windows\System32» (включая вложенные каталоги), у которых размер
# не превышает одного мегабайта

$Params = @{
   Path        = "$env:SystemRoot\System32"
   Include     = "*.dll"
   File        = $true
   Recurse     = $true
   Force       = $true
   ErrorAction = "SilentlyContinue"
}

$Items  = Get-ChildItem @Params
$Result = foreach ($Item in $Items) {
   if ($Item.Length -lt 1MB) {
       $Item
   }
}

Format-Wide -InputObject $Result -Column 4 -Property Name

#endregion Puzzle 2

#region Puzzle 3

# Показать название каталога в корневой папке диска «C:»,
# в котором больше всего вложенных подкаталогов.

$Params = @{
   Path        = "$env:SystemDrive\"
   Directory   = $true
   Recurse     = $true
   Force       = $true
   Depth       = 0
   ErrorAction = "SilentlyContinue"
}

$Items  = Get-ChildItem @Params

$Params = @{
   Directory   = $true
   Recurse     = $true
   Force       = $true
   ErrorAction = "SilentlyContinue"
}

$Result = @(foreach ($Item in $Items) {
   [PSCustomObject] @{
       Folder = $Item.FullName
       Count  = (Get-ChildItem -Path $Item.Fullname @Params).Count
   }
})

[array]::sort($Result.Count, $Result)

$Result[-1]

#endregion Puzzle 3

Всего записей: 3521 | Зарегистр. 16-08-2012 | Отправлено: 07:08 14-01-2020
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Сценарии для Windows


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru