Как скрипт «Does String -contains -not _»/«Не содержит ли строка ничего, кроме _»?Как сделать -Contain -Not: String содержит «Anything other than»
Я не застреваю, так как нашел хорошую работу. Больше любопытства, чем что-либо еще.
Пример:
$String = 1,1,1,2,5
$String -contains !(1)
Это всегда приходит Ложные
Мое решение в моменты, чтобы удалить 1 и посмотреть, если это нуль, как так:
$String2 = $String -ne 1
if ([String]::IsNullOrEmpty($String2)) {
Write-Host "True"
} else {
Write-Host "False"
}
Реальный пример :
Мой скрипт предназначен, чтобы попробовать определенное действие, пока оно не сработает. В этом случае get-msoluser. В конце моего сценария я хочу посчитать любые ошибки (и перечислить их позже), но всегда будет ошибка, указанная для «get-msoluser», поскольку она терпит неудачу, пока она не сработает. Поэтому я стараюсь не включать эту ошибку в счет.
$Errors = $Error.InvocationInfo.MyCommand.Name
if ($Errors -contains !("get-msoluser")) {
Write-Host "There was an error I actually care about"
}
ВМЕСТО Я должен сделать это:
$Errors = $Error.InvocationInfo.MyCommand.Name
$ErrorsICareAbout = $Errors -ne "get-msoluser"
if ([String]::IsNullOrEmpty($ErrorsICareAbout)) {
Write-Host "$ErrorsICareAbout.Count"
} else {
Write-Host "There were errors you actually cared about"
}
Я пропускаю что-нибудь прямо у меня под носом?
Вы пробовали 'Если (! ($ Ошибки -contains ("Get-msoluser")))' –
Да. Прямо под носом. Благодаря! – kgs499
'-notcontains' является оператором, который вы ищете. – wOxxOm