あるプロセスが起動されているか判定する。
001 002 003 004 | ( Get-Process | select name ) -contains "explorer" #false ( Get-Process | %{$_.name} ) -contains "explorer" #true ( Get-Process | select -ExpandProperty name ) -contains "explorer" #true ( Get-Process | Out-String -Stream ) | Select-String "explorer" -Quiet #true |
1行目の様に書いてしまうとcontains演算子の左辺はプロセスオブジェクトなのでFalseになってしまう。
そこで、文字列に変換して判定する。
単純に変換すると2行目のような感じかな。
3行目はExpandPropertyを使っている。
通常こいつはプロパティを展開するときに使うが、副作用?としてプロパティを文字列で返してくれるようだ。
4行目の様に、纏めて文字列にして純粋に検索するというのも有りかと。
0 件のコメント:
コメントを投稿