PowerShellにてアプリのインストールチェックをするには？


昨日と同じ質問で申し訳ありません。  
**[https://ja.stackoverflow.com/questions/11732/シェルスクリプトでnode-
jsがすでにインストール済みかチェックするには/11740#11740](https://ja.stackoverflow.com/questions/11732/%E3%82%B7%E3%82%A7%E3%83%AB%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%E3%81%A7node-
js%E3%81%8C%E3%81%99%E3%81%A7%E3%81%AB%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%B8%88%E3%81%BF%E3%81%8B%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF/11740#11740)**

Mac側ではシェルスクリプトにて、Node.jsのインストール済み確認ができ、  
ファイルサーバーを構築する事ができました。

Windowsを使用しているデザイナーさんもいるため  
PowerShellでも同じことをしたいです。  
ですがアプリのインストール一覧の取得は検索でヒットしますが、指定アプリのインストール済みをチェックする方法がわかりません。

また、できるだけデザイナーさんのインストールの手間などを省くために  
PowerShellを使用してスクリプトを作っていますが、結構苦戦しています。

Windows上でシェルスクリプトを実行するのに、PowerShell以外のツールで  
おすすめがあれば教えていただけませんか？




Windows vista 以降のwindowsの場合パスが通っているコマンドの検索に`WHERE`を使うことができます。  
それを利用して、

[code]

    if (where.exe  node 2> $null) { # コマンドがある場合
        #Write-Output 'Find!'
    } else {  #コマンドがない場合
        #Write-Error 'Error!'
    }
    
[/code]

のようにnodeコマンドが使える場合と使えない場合のスクリプトを書くことができます。

* * *

$lastexitcode を使う方法

[code]

    where.exe /Q node
    if ($lastexitcode -eq 0) { # コマンドがある場合
        Write-Output 'Find!'
    } else {  #コマンドがない場合
        #Write-Error 'Error!'
    }
    
[/code]




Windows vista 以降のwindowsの場合パスが通っているコマンドの検索に`WHERE`を使うことができます。  
それを利用して、

[code]

    if (where.exe  node 2> $null) { # コマンドがある場合
        #Write-Output 'Find!'
    } else {  #コマンドがない場合
        #Write-Error 'Error!'
    }
    
[/code]

のようにnodeコマンドが使える場合と使えない場合のスクリプトを書くことができます。

* * *

$lastexitcode を使う方法

[code]

    where.exe /Q node
    if ($lastexitcode -eq 0) { # コマンドがある場合
        Write-Output 'Find!'
    } else {  #コマンドがない場合
        #Write-Error 'Error!'
    }
    
[/code]

