2017-11-15 20 views
0

私は基本認証を使用してURLから情報を取得するためにpowershellスクリプトを使用しています。これはすべての一般的な技術を使用してうまくいく:wget,Invoke-WebRequestおよびSystem.Net.WebClientWebClientが動作し、wgetが(SYSTEMアカウントで実行されている場合)

同じスクリプトがSYSTEMアカウントとしてタスクスケジューラを使用して実行されている場合は、System.Net.WebClientのみが動作します。

なぜそうなのでしょうか?

+0

'wget'とは、実行可能ファイルかエイリアスのことですか?後者の場合、IWRに等しいので、この例を削除することをお勧めします – Clijsters

+0

ありがとうございますClijisters、私はそれを認識しませんでした – Fidel

答えて

1

おそらく、システムには同じパスと初期化されたPowershellプロファイルがないためです。

Invoke-WebRequestの場合、モジュールMicrosoft.PowerShell.Utilityが必要です。したがって、Import-Moduleまたは#requiresをスクリプトに使用してください。

wgetの場合は、完全なパスを使用してファイルを作成してみてください。いずれか、またはスケジュールされたタスクの作業ディレクトリを設定します。

関連する問題