fc2ブログ

(元)社内SEの徒然なる日記

PowerShellの比較演算子ってどうだっけ?

■ 一覧

こうです。

-eq 等しい
-ne 等しくない
-gt より大きい
-ge 以上
-lt より小さい
-le 以下


他にも、ワイルドカード、正規表現ってのもあるようですが、そこは省いています。

■ 使い方

左が、右と比べてどうか?って使い方をします。

以上を表す -ge をこう使ってみます。
# 2が3以上か?
if (2 -ge 3) {
Write-Output '2は3以上だった'
} else {
Write-Output '2は3以下だった'
}


当然、2は3以下なので、条件を満たしていません。

2は3以下だった

が返ってきます。

■ 実験(2015.2.7追記)

実際に実験してみます。

# 起動パラメータを取得します。
[System.Int32] $expFileNo = $args[0]

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

# パラメータの値が1より小さい
if ($expFileNo -lt 1) {
Write-Host '1より小さい'
}

# パラメータの値が1以下
if ($expFileNo -le 1) {
Write-Host '1以下'
}

# パラメータの値が10を超える
if ($expFileNo -gt 10) {
Write-Host '10を超える'
}

# パラメータの値が10以上
if ($expFileNo -ge 10) {
Write-Host '10以上'
}

# パラメータの値が5
if ($expFileNo -eq 5) {
Write-Host '5'
}

# パラメータの値が5ではない
if ($expFileNo -ne 5) {
Write-Host '5ではない'
}


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

パラメータ「0」

[0]
1より小さい
1以下
5ではない


パラメータ「1」

[1]
1以下
5ではない


パラメータ「10」

[10]
10以上
5ではない


パラメータ「11」

[11]
10を超える
10以上
5ではない


パラメータ「5」

[5]


パラメータ「6」

[6]
5ではない


■ 後書き

PowerShellで何か書くのって、バックアップの死活確認だの、リリース登録の自動化だのって感じで、日常的に書いたりしないので、この手の基礎的な事がすっぱりと忘れちゃうんですよね。

こんな妙な記号なんて使わずに、普通の><=とかに出来ないものでしょうかね?

ちなみに、実験の部分は2015.2.7に追記しています。というのも、この記事を書いていたことを忘れて、同じ内容で記事を書いちゃったんですよ。捨てるのも勿体ないので、ここで使うことにしました。

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

--- blog end ---



スポンサードリンク

PageTop

コメント


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