Многие, а может даже и все знают, что PowerShell имеет возможность автоматически определять тип переменной, но не всегда это удается хорошо и правильно. В одном из своих проектов я столкнулся с тем, что в Sting было записано целое число, которое требовалось сравнить c int переменной. Чего сделать ну просто никак нельзя, да и не получится.
Как бы все не казалось странным, но в российском интернете так правильного решения найти и не удалось.
Но эту "беду - не беду" я все таки победил .
Есть замечательный оператор Parse - Его и будем использовать, о том как именно - идем под кат.
Ну на самом деле это использовать нужно как-то так
[int]::Parse($string)
И вот он готовый пример кода:
Clear-Host [string]$str = 51 $stroka = [int]::Parse($str) #$str.GetType().FullName if ($stroka -le 50) { Write-Host "меньше"} else {Write-Host "больше"}
Таким вот не хитрым образом можно сравнить "строку" с "числом" .