我想实现一个GUI到我的PowerShell脚本来简化其他用户的某个过程。我有以下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分钟检查一次作业是否完成,但是我无法确定了解如何区分每个工作以做具体的事情。
谢谢你的快速答案。所以,如果我给我的工作个人名称,然后使用Get-Job -Name cmdlet,我可以创建一个自定义的消息,打印出一旦作业已完成,即使它需要几个小时?或者我是否必须制作一个循环,每5分钟连续检查一次是否完成? –
你也可以让工作完成后自己输出信息 –
这将是一个完美的解决方案,但我该怎么做?我通过在我的.cmd文件后面写了一个写主机消息来尝试它,但是它只是悄悄地打印了消息,即使该作业尚未完成。 –