私はActive DirectoryとMS Exchangeのいくつかのタスクを完了するpowershellスクリプトを持っています。コールロギングシステムのActive Directoryユーザー名を渡す必要があります。コールログシステムが引数を渡すことは簡単です。Powershellに引数を渡す
私が直面している問題は、powershellに引数を変数に読み込ませることです。
私は、概念実証の例を提供します。
引数をpowershellに渡すサンプルコマンドです。ここで
C:\Users\UserName\Desktop\Test.ps1 -ADusername "Hello World"
は、サンプルスクリプトです:
Param([string]$adusername)
$adusername
pause
私は次の出力を期待しています:
Hello World
Press Enter to continue...:
これは実際の出力です:ちょうど私を包む
Press Enter to continue...:
このコアコンセプトのまわりで頭を下げる私は非常に助けてくれます。自分のシナリオに適用した場合に動作するサンプルやチュートリアルを見つけることができませんでした。私はこれが重複した投稿であるなら、このサイトで何かを見つけることができなかったことを謝ります。
EDITは:新しいスクリプトで次のhttp://pastebin.com/ktjpLQek
あなたからそのスクリプトを実行しているにCDの後に例を呼び出しますか?それは私のためにpowershellから動作します。 (私はまだpowershell 5.0を使用していませんが) –
@EtanReisnerそれは2の私にとってもうまくいくようです。私は、PowerShellを最初に呼び出すことなくparamsを呼び出すことは奇妙なことであることを発見しました。多くの場合、$ args [x]は最も簡単なルート(特に1つのarg)を示します... –
@AustinFrench "powershell first" ?あなたは 'cmd.exe'か何かからpowershellスクリプトを直接実行しようとしているのでしょうか? –