Muni Bus

パソコンの操作方法や設定方法を忘れないようにメモしています。ブログを一回引っ越ししているので、所々表示がかなり乱れています・・・

【PowerShell】NULL(ヌル)の判定

$null自動変数を使う。以下、実用的ではないがわかりやすい例。

C:\WindowsとC:\の親ディレクトリを取り出そうとするが、C:\Windowsの親ディレクトリはC:\だが、C:\はルートディレクトリであり親ディレクトリがないためにヌルが戻ってくる。それを判定している。

PS > $s = (get-item c:\windows).parent
PS > $s -eq $null
False
PS > $s = (get-item c:\).parent
PS > $s -eq $null
True

同様に、ファイル(win.ini)に対してDirectoryInfoクラスにしかないプロパティを指定すると、値が存在しないためヌルが戻る。それの判定。

PS > $s = (get-item c:\windows\win.ini).name
PS > Write-Output $s
win.ini
PS > $s -eq $null
False
PS > $s -ne $null
True
PS > $s = (get-item c:\windows\win.ini).parent
PS > Write-Output $s
PS > $s -eq $null
True