問題タブ [invoke-command]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1795 参照

powershell - powershell スクリプト内から powershell スクリプトを実行する

私はperlスクリプトperl1.plを持っています。perl スクリプト内で、powershell スクリプト script1.ps1 を呼び出します。script.ps1 では、ローカル変数をパラメーターとして使用して、script2.ps1 のような他のスクリプトを呼び出します。powershell スクリプト script3.ps1 を用意しました。script2.ps1 と並行して、script1.ps1 から script3.ps1 を実行したいと考えています。sample_script2.ps1 が実行されるのと同じ引数 (引数としてローカル変数) を渡す必要があります。最初に script3 を呼び出し、次に script2 を呼び出す必要があります。

次のようにpowershel.exeを試しました

C:..\powershell.exe -FilePath script3.ps1 $a,$b,$c

バイパス、実行ポリシーを含めました。$a $b $c はローカル変数です。しかし、何が起こるかは、コマンドラインが開き (スクリプトが呼び出される方法であるため)、script1.ps1 の実行を開始し、上記のコマンドで停止します。上記のコマンド ラインで「exit」と入力すると、script2 が起動します。

script3.ps1 と script2.ps1 を同じように並列実行するにはどうすればよいですか。

0 投票する
3 に答える
13830 参照

java - リモート サーバーの PowerShell から Java のバージョンを取得する

リモート マシンで資格情報を使用して呼び出しコマンドを使用して、そのマシンの Java バージョンを含む文字列を返すコードを実行するスクリプトをPowerShellで作成しようとしています。Java がインストールされていません。サーバーにJDKフォルダーとしてドロップされ、アプリケーションがその場所を指している場合もあります。残念ながら、レジストリを使用して Java のバージョンを見つけることはできません。私が思いついた唯一のアイデアは、呼び出しコマンド内から次の行に沿って何かを呼び出すことです。

または、さらに複雑な場合は、正規表現を使用してバージョンを見つけます。

ただし、一部のサーバーでは、その Java バージョンのコマンドを実行するのに十分なヒープ領域がないという問題が発生し続けています (そのリモート サーバーの呼び出しコマンドを使用)。

私の調査によると、リモート PowerShell セッション用に設定された MaxMemoryPerShellMB に関係しています。150 に設定されているサーバーもあれば、1024 に設定されているサーバーもあります。したがって、PowerShell リモート セッションから正常java -versionに実行できる場合と、メモリが少なすぎるために実行できない場合があります。ログインして手動でリモートマシンに設定した場合:

それは働き始めます。しかし、毎回各サーバーに行って手動で設定することはできません。Invoke コマンドを使用して MaxMemoryPerShellMB を設定しようとすると、同じアカウントを使用してサーバー上の MaxMemoryPerShellMB を変更できますが、ログインして直接変更すると、アクセス権がないと表示されます。

解決策が不足しているように感じ、ここで助けを見つけたいと思っていました。これに関するトピックがあった場合は申し訳ありませんが、3 つしか見つかりませんでしたが、どれも私の質問に答えてくれませんでした。以下、興味のある方は参考にしてください。私が見つけることができるものは本当に何もありません:P

0 投票する
1 に答える
5884 参照

function - 呼び出しコマンドPowershellを使用して関数内で関数を呼び出す

呼び出しコマンドの関数内で関数を呼び出したいと思っています。私はこれを適切に行っていないようです。「get-group_users」が認識されないというエラーが表示されます。すべてが 1 つの ps1 スクリプトに含まれています。

切り捨てられたスクリプト:

だから、私はget-groups_users関数を除外しています。誰かがそれがすべてを説明するのに役立つと思うなら、私はそれを投稿できます. それは長いものです。また、私は$xmlwriter定義を省略しています。

get-groups_usersCOMP1で実行すると機能しますが、サブコンプPSSessionのinvoke-commandで入力して使用すると、認識されません。

私は何を忘れていますか?

0 投票する
2 に答える
1164 参照

powershell - pssession 関数が機能しない

多くの PowerShell スクリプトが実行するユーザー コンテキストを変更する必要がある特定のユース ケースがあります。確実に動作するコードがありますが、各スクリプトで繰り返すのではなく、関数に入れようとしています。

個別に、この関数の行は機能しますが、関数として実行すると、スクリプトでエラーは発生しませんが、結果は得られません。

誰かがこれで私が欠けているものを見つけることができれば、私はそれを大いに感謝します.

0 投票する
2 に答える
6316 参照

powershell - 呼び出しコマンドと msiexec

Invoke-Commandコマンドレット を使用してリモート マシン上のアプリケーションを削除しようとしていますが、機能しません。

これが私のスクリプトです:

このコンテキストで、信頼できる有効な代替手段はありますか?

0 投票する
4 に答える
3714 参照

json - Invoke-Command から返された余分なデータ

PowerShell を使用して、リモート サーバーのリストからデータを収集し、それを JSON オブジェクトに変換しています。すべて正常に動作していますが、除外できないような非常に奇妙な出力が得られます。

結果をパイプして、Invoke-Commandプロパティを除外しようとしました。また、返されたハッシュ ファイルからアイテムを手動で削除しようとしましたが、削除できないようです。

私は何が欠けていますか?

編集:

ここで何が問題なのかを理解するために、単純化されていますが、まだ壊れているスクリプトがあります。

どの出力:

0 投票する
1 に答える
195 参照

windows - 配列引数などを渡す方法は?

エラー:

Invoke-Command : 引数 'True' を受け入れる位置パラメーターが見つかりません。

高低を検索しましたが、引数リスト内の何かと一緒に配列を渡す方法が見つかりません。試してみました: (,$files,$copyxml)(,$files),$copyxml、および(,$files) $copyxml

これを行う方法はありますか?