2016-08-24 19 views
-1

バッチファイルから呼び出すPowerShellスクリプトを作成しました。バッチファイルを呼び出すとすべて正常に動作します。私が実行している問題は、タスクスケジューラで実行するバッチファイルを設定する必要があることです。それはうまく始まりますが、タスクスケジューラは決して「操作が正常に完了しました」(0x0)とは言わないので、ハングアップし続けます。代わりに、「タスクは現在実行中です」(0x41301)にとどまります。私はPowershell Scriptを呼び出すのに最も理想的な方法ではないことをお伝えしますが、私たちの環境とスクリプティングの知識が限られているため、私たちのために最適です。バッチファイルを実行してpowershellスクリプトを呼び出すタスクスケジューラ

+0

PowerShellスクリプトは、次の場所から直接実行できます。タスクスケジューラスクリプトが何をしているのか、それを実行するためにバッチ/ cmdファイルが必要な理由、そしていくつかのコード例について、より多くの情報を与えることができますか? – autosvet

+0

あなたは予定通りの仕事を見たいかもしれません –

+0

@JaquelineVanek新しいスペルチェッカーが必要です。もう一度その "肯定的な"言葉があります:) – DavidPostill

答えて

0

タスクスケジューラを使用してPowerShellを実行してください。

新しいタスクを作成し、Actionsタブに移動してNew...を選択し、この新しいウィンドウ内でcmdから何かを実行するようなプログラムを実行できます。

Program/script square内には、Powershell.exeAdd arguments (optional) powershell引数を入れてください。あなたは、通常のコマンドラインに入力し、これは、同じように動作します:あなたは、スクリプトを実行したいのであれば

powershell <arguments> 

、それはあなたのディスクに保存され、単に引数リストでこれを置く:

C:\LocalisationOfScript\script.ps1 "argument 1" argument2 

あなたはより多くのオプションをしたい場合は、ちょうどこの前に共通のパラメータを追加します。でも、このうち

-windowstyle hidden -executionpolicy bypass C:\LocalisationOfScript\script.ps1 "argument 1" argument2 

を:

-windowstyle hidden -executionpolicy bypass if (Test-path C:\script\script.ps1) { C:\script\script.ps1 "argument 1" argument2 } else { return -1 } 

そして最後に:

Start-Process Powershell.exe -argumentslist "-a -b -c copy" -windowstyle hidden -wait -erroraction stop 

あなたも、最後の例にキャッチし、試す追加することができます。

0

すべてのコメントありがとうございました。私はあなたのアドバイスを調べ、exitコマンドを見つけました。スクリプトの最後に追加するのを忘れてしまったので、スクリプトを呼び出すと、exitを適用した後、 (0x0)に変更されたタスクスケジューラ

関連する問題