powershell - 如何使用 PowerShell 从任务计划程序中删除文件夹?

标签 powershell scheduled-tasks

我可以使用具有特定路径的 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/

相关文章:

powershell - 如何使powershell内联脚本路径识别空格?

c# - 确保只有计划任务可以调用 Controller 操作

java - 使用定时器在java中安排任务

excel - vbscript,Excel 8.0 工作表上的密码

azure - 设置 Azure AD 应用 key 过期通知

powershell - 无法让 WMI 连接在 powershell 中工作

powershell - 测试路径无法在存在的文件上返回 $True

regex - PowerShell中的正则表达式仅匹配该行的第一个匹配项

ruby-on-rails - 如何在Rails项目中运行日常任务/脚本?

c# - 从 Web 应用程序运行计划任务