私はPowerShellスクリプトにGUIを実装して、他のユーザーの特定のプロセスを簡素化しようとしています。私はPowerShellのスクリプトを次のようしている。ジョブが完了したら何かを行う方法
if ($checkBox1.Checked) {
Try{
Start-Job { & K:\sample\adp.cmd }
$listBox1.Items.Add("ADP-Job started...")
}catch [System.Exception]{
$listBox1.Items.Add("ADP --> .cmd File not found!")}
}
if ($checkBox2.Checked) {
Try{
Start-Job { & K:\sample\kdp.cmd }
$listBox1.Items.Add("KDP-Job started...")
}catch [System.Exception]{
$listBox1.Items.Add("KDP --> .cmd File not found!")}
}
は、継続的に実行中のすべてのジョブを確認して、終了したジョブごとに何かをする方法はありますか?私のリストボックスにこのようなものを印刷する例:ADP-Files have been uploaded
ジョブごとに約5分〜4時間かかると思ったが、ジョブが終了すると5分ごとにチェックするLoopと思ったが、どのように各ジョブを区別して何か特定のことをする。
あなたが-Name
パラメータ使用してジョブの名前をspecifiyするか
ありがとうございました。だから私は私のジョブの個々の名前を与えて、Get-Job -Nameコマンドレットを使用する場合、私はジョブが完了した後、印刷するカスタムメッセージを作成することができますが、それは数時間かかりますか?それとも、完了したら5分ごとに継続的にチェックするループを作成する必要がありますか? –
完了した後で仕事を自分自身に出力させることもできます –
それは完璧な解決策ですが、どうすればいいでしょうか?私は.cmdファイルの後ろに書込みホストメッセージを入れてみましたが、ジョブがまだ完了していなくても、メッセージを表示するだけです。 –