인사말!PowerShell 코드는 대화 형으로 작동하지만 스크립트 내에서 작동하지 않습니다.
그래서, 난 그냥 파워 쉘 프로그래밍의 내 일상에 있었고, 난이 작은 친구에 도착 :
Get-WmiObject : Invalid class
At line:184 char:19
+ $RECApp = gwmi <<<< Win32_product | ? {$_.Name.Contains($Application)}
+ CategoryInfo : InvalidOperation: (:) [Get-WmiObject], ManagementException
+ FullyQualifiedErrorId: GetWMIManagementException,Microsoft.PowerShell.Commands.GetWmiObjectCommand
코드가 스크립트에서 실행될 때 재미있는 것은이 오류 만 표시됩니다된다 명령 줄에 수동으로 입력하면 같은 코드가 작동합니다. 이 스크립트가 실행중인 원격 시스템과 관련이 있는지는 알 수 없지만 수동으로 입력 할 때 작동하지만 스크립트에서 실행될 때는 작동하지 않는 이유는 무엇입니까?
Enter-PSSession -ComputerName $serverName
$App = gwmi Win32_product | ? {$_.Name.Contains($Application)}
$App.Uninstall();
exit
가 요약하면,이 코드 명령 줄에 수동으로 입력 매력처럼 작동하지만 때 양식에게 나는 위의 오류를 얻을 수있는 스크립트를 실행 않는 이유 : 난 당신이 여기 내 코드의 조각을 얻을 것이다?
감사합니다.
글쎄, 누군가 당신의 질문에 대한 좋은 설명을 해줄 때 그것을 좋아할 것입니다. 고마워요 :) 추신. 이 후에 세션을 종료 할 필요가 있습니까? –
Aaah 이걸 가지고있어. Get-PSSession으로 활성 세션을 찾으면'Remove-PSSession'으로 제거한다. 그래서 그것들을 파이프하여'Get-PSSession | Remove-PSSession' –