1

winrmが正常に機能Enter-PSSession my-machineし、シェルで実行してコマンドを入力できるようになりました。ただし、リモートセッションを起動するスクリプトを実行しようとすると、それ以降のすべての呼び出しはローカルマシンで実行されます。例えば:

PS> test.ps1

test.ps1の内容

Enter-PSSession remote-pcname
gc env:computername

スクリプトファイルがリモートセッションを尊重しない理由を何も考えlocal-pcnameずに印刷しますか?remote-pcnameスクリプトが終了すると、リモートマシンのシェルプロンプトに戻るため、接続は確実に成功しています。

4

2 に答える 2

6

簡単な答えは次のとおりです。Enter-PSSessionはインタラクティブな使用を目的としています。スクリプトからリモートシステムでコマンドを実行する場合は、invoke-commandを使用します。

Technetフォーラムの同様のスレッドはここにあります: http ://social.technet.microsoft.com/Forums/en-US/winserverpowershell/thread/90e92d4e-716b-4b4d-956f-d38645e5c035

于 2011-05-25T03:33:03.890 に答える
4

私にとっては、文書化されているとおりに機能します。インタラクティブセッションをEnter-PSSession開始します。インタラクティブに使用します。

したがって、スクリプトを実行するにはNew-PSSession、New-PSSessionで作成したリモートセッションを使用してセッションとInvoke-Commandを作成するために使用できます。

于 2011-05-25T03:36:41.717 に答える