PowerShell で条件を否定する方法
-
PowerShell で条件を否定するために
-not
演算子を使用する -
PowerShell で条件を否定するために
!
演算子を使用する -
PowerShell で条件を否定するために
-notmatch
演算子を使用する -
PowerShell で条件を否定するために
-ne
演算子を使用する -
PowerShell で条件を否定するために
-notlike
演算子を使用する - 結論

PowerShell は、他のプログラミング言語のようにコードを実行するための異なる意思決定文を持っています。PowerShell スクリプトでは、意思決定のために条件を使用できます。
スクリプトは、これらの決定に基づいて異なるアクションを実行します。条件が true
の場合、一つのコマンドを実行し、条件が false
の場合は別のコマンドを実行します。
PowerShell で最も多く使用される文の一つは If
文です。if
文、if-else
文、入れ子の if
文の 3 種類があります。
PowerShell では、条件文として switch
文も使用します。
ここに if
文のシンプルな例があります。
if (5 -lt 7) {
Write-Host "5 is less than 7"
}
5
が 7 未満であれば、Write-Host
コマンドを実行します。
出力:
論理演算子は、PowerShell の条件文を接続し、複数の条件をテストすることを可能にします。PowerShell は、-and
、-or
、-xor
、-not
、および!
という論理演算子をサポートしています。
このチュートリアルでは、PowerShell で条件を否定する方法を学びます。
PowerShell で条件を否定するために -not
演算子を使用する
PowerShell において、-not
演算子は条件を否定するための強力なツールです。論理式の結果を簡単に逆転させ、スクリプトをよりダイナミックで柔軟にします。
$condition = $true
if (-not $condition) {
Write-Host "Condition is false"
}
この例では、$condition
を $true
に初期化します。$condition
に -not
演算子を適用すると、元の条件が真だったため、$false
として評価されます。その結果、メッセージ"Condition is false"
は表示されません。
出力:
さて、別の条件をテストしましょう。
$value = 5
if (-not ($value -eq 10)) {
Write-Host "Value is not equal to 10"
}
この例では、$value
を 5
に設定します。$value
が 10
と等しいかどうかを確認するために -eq
演算子を使用しますが、-not
演算子を使用してこの条件を否定します。その結果、($value -eq 10)
は $false
として評価され、-not
演算子によって $true
に変換されます。
その結果、メッセージ"Value is not equal to 10"
が表示されます。
出力:
PowerShell で条件を否定するために!
演算子を使用する
!
演算子は、logical NOT
演算子とも呼ばれ、条件を否定するために使用されます。これは、真偽値を反転させるものです。
この演算子は、条件が真でなく、偽であるかどうかを確認する必要があるときに一般的に使用されます。
$condition = $true
if (!$condition) {
Write-Host "Condition is false"
}
この例では、$condition
を $true
に初期化します。$condition
に!
演算子を適用すると、元の条件が真だったため、$false
として評価されます。その結果、メッセージ"Condition is false"
は表示されません。
出力:
PowerShell で条件を否定するために -notmatch
演算子を使用する
PowerShell では、-notmatch
演算子はパターンマッチングに基づいて条件を否定するために使用されます。この演算子は、文字列が指定されたパターンと一致しないかどうかを確認します。
特定の文字列やパターンを除外したい場合に特に便利です。
$string = "Hello, world!"
if ($string -notmatch "Goodbye") {
Write-Host "String does not contain 'Goodbye'"
}
この例では、$string
という文字列が"Hello, world!"
の値を持っています。この文字列が"Goodbye"
というパターンと一致しないかどうかを確認するために -notmatch
演算子を使用します。
文字列"Hello, world!"
は部分文字列"Goodbye"
を含まないため、条件は真であり、メッセージ"String does not contain 'Goodbye'"
が表示されます。
出力:
PowerShell で条件を否定するために -ne
演算子を使用する
PowerShell では、-ne
演算子は不等号に基づいて条件を否定するために使用されます。これは、2つの値が等しくないかどうかを確認します。
特定の値を比較から除外する必要があるときに特に便利です。
$value = 5
if ($value -ne 10) {
Write-Host "Value is not equal to 10"
}
この例では、変数 $value
に値 5
を割り当てます。その後、$value
が 10
と等しくないかどうかを確認するために -ne
演算子を使用します。
$value
は確かに 5
であり、10
と等しくないため、条件は真として評価され、メッセージ"Value is not equal to 10"
が表示されます。
出力:
PowerShell で条件を否定するために -notlike
演算子を使用する
PowerShell では、-notlike
演算子はワイルドカードパターンマッチングに基づいて条件を否定するために使用されます。この演算子は、文字列が指定されたパターンと一致しないかどうかを確認できます。
特定のパターンや部分文字列を比較から除外する必要があるときに役立ちます。
$string = "Hello, world!"
if ($string -notlike "*Goodbye*") {
Write-Host "String does not contain 'Goodbye'"
}
この例では、$string
という文字列が"Hello, world!"
の値を持っています。この文字列が"*Goodbye*"
というパターンと一致しないかどうかを確認するために -notlike
演算子を使用します。
文字列"Hello, world!"
は部分文字列"Goodbye"
を含まないため、条件は真であり、メッセージ"String does not contain 'Goodbye'"
が表示されます。
出力:
結論
この記事では、PowerShell で条件を否定するさまざまな方法を探求し、スクリプトロジックの柔軟性と精度を提供しました。-not
演算子について議論し、論理式の結果を逆転させた後、条件を直接否定するために使用される!
演算子について説明しました。
次に、指定されたパターンに一致しない文字列をチェックする -notmatch
演算子、2つの値間の不等号を評価する -ne
演算子について掘り下げました。最後に、ワイルドカードパターンマッチングに基づいて条件を否定するために使用される -notlike
演算子について説明しました。
これらの方法を理解し応用することで、PowerShell ユーザーはスクリプトの堅牢性と多様性を高めることができます。