Powershellを使用して、リモートマシン上のバッチファイルを呼び出す必要があります。このバッチファイルには引数があります。ここで私はこれまでにしているものです:PowershellのInvoke-Commandを使用して引数付きバッチファイルを呼び出す
$script = "\\fileshare\script.cmd"
$server = $args[0]
$args [string]::join(',',$args[1 .. ($args.count-1)])
Invoke-Command -computername $server {$script + ' ' + $args}
検索のビットの後、私は、Invoke-Commandコマンド機能はまったく新しいプロセスでそのスクリプトブロックを実行することがわかったので、あなたはそれに変数を置くことができない(彼らが」勝ちましたtは伸びる)。これが、-ArgumentListタグの目的です。だから、私は、バッチスクリプトは、それが任意の引数が渡されていないと言われます...どちらか動作していないことを...代わりに
Invoke-Command -computername $server {\\fileshare\script.cmd} -ArgumentList "FirstArgument"
これを試してみました。私は明示的にそういうものは見つけられませんが、-ArgumentListパラメータはPowershellスクリプトでしか動作しません(バッチスクリプトには供給されません)。
私はInvoke-Commandを使用して引数付きバッチファイルを呼び出す方法はありますか?
ありがとう!それはInvoke-Commandのテクニカルドキュメントに書いてあることですが、私はちょっと恥ずかしく、私はそれを私自身は理解できませんでした!しかし、$ argsについてのちょっとしたことは役に立ちます。 –