我可以使用具有特定路径的 Register-ScheduledTask PowerShell cmdlet(即,使用 -TaskPath "\SomePath\"和 -TaskName "SomeName")在 Windows 中创建计划任务。我可以使用具有相同参数的 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)
最佳答案
ScheduledTasks 只是存储在这里的 xml 文件:
Get-ChildItem -Path 'C:\Windows\System32\Tasks'
您可以从那里删除它们。它们也从此处的注册表中引用:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache
只需使用...
Remove-Item -Path 'somepath' -Force
... cmdlet 就像您通常对任何文件或文件夹所做的那样。
现在当然,如果有一个文件/文件夹属性集,那就是阻止删除,只需删除它。
关于powershell - 如何使用 PowerShell 从任务计划程序中删除文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56926116/