私はリスト内のすべてのコンピュータに入力しようとしており、そこからソフトウェアを削除しようとしています。Enter-PSSessionが変数を返さない
私はコードを(foreachを使用していない)しようとすると、コードは正常に動作します。しかし、私はそれをループしようとすると、全く動作しません。
"何か"がある場合、何もしません。例えば、私が実行しようとしました:
$product = Get-WmiObject -Class Win32_Product | Where-Object {$_.name -like "7-zip*"}
次の行では、画面上の$product
変数を印刷します。しかし、それは常に空です。
手動でpssession
と入力してこのコマンドを実行すると、何かが返されます。
私はここで間違っていますか?私はすでにこれを理解しようとしている時間を無駄にしませんが、運:(
foreach ($computer in $computers){
if(Test-Connection "$computer" -Count 1 -ErrorAction SilentlyContinue){
Enter-PSSession -ComputerName $computer
"do something"
Exit-PSSession
}else{
Write-Warning "computer is offline."
}
}
https://stackoverflow.com/questions/3705321/enter-pssession私のPowerShellのスクリプトでは、PSSessionは対話的に使用するためのものではありません。 – Raziel