社内SEの徒然なる日記

PowerShellの論理演算子

■ 論理演算

久しぶりにPowerShellでスクリプトを作ったのですが、if文を書こうとしたところで手が止まりました。

・・・あれ、PowerShell論理演算子ってどうだっけ?

■ 比較演算子

対比すると、こんな感じ。

AND : -and  論理積
OR : -or 論理和


論理否定もあるのですが、それを使うと後で追う時の混乱するので私は使わないので書きません(別に論理否定を使いこなせない訳ではないですよ)。

■ 実験

実験のため、外部からパラメータを受け取って実行する処理をつくってみました。
# 起動パラメータを取得します。
[System.Int32] $expFileNo = $args[0]

Write-Host ('[' + $expFileNo + ']')

# パラメータの値が1〜10の範囲外
# パラメータ < 1 又は パラメータ > 10

if ($expFileNo -lt 1 -or $expFileNo -gt 10) {
Write-Host '1〜10の範囲外'
}

# パラメータの値が1〜10の範囲内
# パラメータ <= 10 かつ パラメータ >= 1

if ($expFileNo -le 10 -and $expFileNo -ge 1) {
Write-Host '1〜10の範囲内'
}

色々とパラメータを与えて実行してみます。

パラメータ「0」
[0]
1〜10の範囲外


パラメータ「1」
[1]
1〜10の範囲内


パラメータ「10」
[10]
1〜10の範囲内


パラメータ「11」
[11]
1〜10の範囲外


パラメータ「5」
[5]
1〜10の範囲内


投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

コメント


管理者にだけ表示を許可する