Size: a a a

PowerShellRus - о Powershell (и не только) на русском

2020 April 10

Y

Your Hero in PowerShellRus - о Powershell (и не только) на русском
Как бы вроде бы и не плохо
источник

Y

Your Hero in PowerShellRus - о Powershell (и не только) на русском
А вроде и пиздец. У меня много двузначных значений, в каждом методе городить If else копипастой? Ойвпизду
источник

J

Jan Baton Makaron in PowerShellRus - о Powershell (и не только) на русском
ну не нравится if, используй тернарный)
источник

4

4c74356b41 in PowerShellRus - о Powershell (и не только) на русском
Your Hero
А вроде и пиздец. У меня много двузначных значений, в каждом методе городить If else копипастой? Ойвпизду
написать функцию и вызывать её
источник

AS

Andrey Shishkin in PowerShellRus - о Powershell (и не только) на русском
Your Hero
Но так и не понял как нормально валидировать значения, кроме как в самом методе
так если это должно быть ограничено именно для метода — в чём проблема писать в методе?
источник

D

Dr. L.S.Dee in PowerShellRus - о Powershell (и не только) на русском
Your Hero
А вроде и пиздец. У меня много двузначных значений, в каждом методе городить If else копипастой? Ойвпизду
Выше же все есть. Работает валидация параметров в методах и конструкторах, работает.
источник

D

Dr. L.S.Dee in PowerShellRus - о Powershell (и не только) на русском
Не прошло валидацию — высрало ЕГГОГ.
источник

D

Dr. L.S.Dee in PowerShellRus - о Powershell (и не только) на русском
Можно еще enum использовать.
источник

D

Dr. L.S.Dee in PowerShellRus - о Powershell (и не только) на русском
> двузначных

Т.е. параметров, каждый из которых может принимать только два возможных значения, я правильно пони?
источник

D

Dr. L.S.Dee in PowerShellRus - о Powershell (и не только) на русском
Или все же это целые числа от 10 до 99? И строки от aa до ZZ?
источник

CN

Constantin Nikitin in PowerShellRus - о Powershell (и не только) на русском
Dr. L.S.Dee
ХЗ. А зачем?
Ну я написал обертку для create-task т.к. надоело каждый раз набивать кучу параметров. И среди параметров есть
WeekDays
он в свою очередь может быть как string так и int, и хотелось бы сделать проверку при передаче параметров.
 
 [Parameter()]
 [ValidateSet ("monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday")]
 [ValidateRange(1, 99)]
 [String[]] $WeekDays = "1"
источник

D

Dr. L.S.Dee in PowerShellRus - о Powershell (и не только) на русском
Constantin Nikitin
Ну я написал обертку для create-task т.к. надоело каждый раз набивать кучу параметров. И среди параметров есть
WeekDays
он в свою очередь может быть как string так и int, и хотелось бы сделать проверку при передаче параметров.
 
 [Parameter()]
 [ValidateSet ("monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday")]
 [ValidateRange(1, 99)]
 [String[]] $WeekDays = "1"
О блин. Где-то было такое. Но там, по-моему, был еще и ParameterSet.
источник

CN

Constantin Nikitin in PowerShellRus - о Powershell (и не только) на русском
Или будет фейлиться из-за того, что ValidateRange не может работать со String?
источник

D

Dr. L.S.Dee in PowerShellRus - о Powershell (и не только) на русском
И в одном сете параметр был [string], а в другом — [int].
источник

CN

Constantin Nikitin in PowerShellRus - о Powershell (и не только) на русском
Вот это мне и нужно, не подскажешь куда копать?
источник

CN

Constantin Nikitin in PowerShellRus - о Powershell (и не только) на русском
Кстати написал полезняху для замера скорости выполнения скрипта.
Function Timer {
 switch ($args) {
   on {$Global:StartMs=Get-Date}
   off {
     $EndMs=Get-Date
     Write-Host "Exec time: $([math]::Round(($EndMs-$StartMs).TotalSeconds,3)) sec"
   }
   off2 {
     $EndMs=Get-Date
     Write-Host "Exec time: $([math]::Round(($EndMs-$StartMs).TotalSeconds,3)) sec"
   }
   off3 {
     $EndMs=Get-Date
     Write-Host "Exec time: $([math]::Round(($EndMs-$StartMs).TotalSeconds,3)) sec"
   }
 }
}
источник

Y

Your Hero in PowerShellRus - о Powershell (и не только) на русском
Dr. L.S.Dee
> двузначных

Т.е. параметров, каждый из которых может принимать только два возможных значения, я правильно пони?
1..99 типо
источник

Y

Your Hero in PowerShellRus - о Powershell (и не только) на русском
Неправильно выразился немного
источник

CN

Constantin Nikitin in PowerShellRus - о Powershell (и не только) на русском
timer on - запускаем
timer off - останавливаем и получаем время выполнения всего скрипта или его части.
источник

Y

Your Hero in PowerShellRus - о Powershell (и не только) на русском
Ну если говорите что работает
источник