2016-08-17 10 views
0

powershellスクリプトをスケジュールします。大丈夫ですが、powershellスクリプトにはinvoke-expressionコマンドが含まれており、別のスクリプトを呼び出すことはありません。 誰も同じような問題を経験しましたか?スケジュールされたpowershellスクリプトのinvoke-expressionが別のスクリプトを呼び出さない

+2

デバッグ用のコードを提供できますか?管理者として実行していますか? – Syphirint

+0

@Syphirintはドメイン管理者の資格情報でそれを実行しています。私はそれを私の信任状と一緒に成功することなくスケジュールしようとしました。しかし、スケジューラの外でスケジューリングされたスクリプトを手動で起動すると、そのスクリプトが動作し、他のスクリプトを呼び出す。私の資格にもドメイン管理者権限があります。スケジューラでのみ動作しません。 – Szotyii

答えて

0

覚えているように、スケジュールされたジョブには制限があります。次のように区切られたスクリプトファイルとスケジュールジョブにInvoke-Commandコマンドを使用してコードを移動するようにしてください:

$trigger = New-JobTrigger -Daily -At '6 am' 
$options = New-ScheduledJobOption -WakeToRun -RequireNetwork 
Register-ScheduledJob -FilePath .\ScriptWithInvokeCommand.ps1 -Name SampleJobName -Trigger $trigger -ScheduledJobOption $options -RunNow 

あなたはまた、代わりにスケジュールされたジョブのスケジュールされたタスクを使用することができます。

+0

スクリプト内でinvoke-expressionまたはinvoke-commandを使用することができれば幸いです。もう1つの方法は、他のスクリプトから関数を実装することです。 – Szotyii

関連する問題