如何使用PowerShell从Task Scheduler中删除文件夹?

时间:2019-07-07 21:06:25

标签: powershell scheduled-tasks

我可以使用带有特定路径的Register-ScheduledTask PowerShell cmdlet在Windows中创建计划任务(即,使用-TaskPath“ \ SomePath \”和-TaskName“ SomeName”)。我可以使用具有相同参数的Unregister-ScheduledTask删除任务。我可以使用Windows“任务计划程序” GUI验证删除。但是,文件夹(“ \ SomePath \”)不会被删除。尽管这很合理,但是我找不到删除该空文件夹的任何方法。

如何使用PowerShell删除空的Task Scheduler文件夹?

更新:经过更多研究,我发现了在PowerShell中解决此问题的另一种方法。它涉及使用Schedule.Service对象。这是删除名为“我的任务文件夹”的文件夹的代码:

$scheduleObject = New-Object -ComObject Schedule.Service
$scheduleObject.connect()
$rootFolder = $scheduleObject.GetFolder("\")
$rootFolder.DeleteFolder("My Task Folder",$null)

1 个答案:

答案 0 :(得分:0)

计划的任务只是文本xml文件,存储在此处:

Get-ChildItem -Path 'C:\Windows\System32\Tasks'

您可以从此处删除它们。

嘿,然后在...中从注册表中引用了

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache

只需使用...

Remove-Item -Path 'somepath' -Force

... cmdlet,就像通常处理任何文件或文件夹一样。

现在,当然,如果设置了文件/文件夹属性(阻止删除),只需将其删除。