我认为无论您使用什么操作系统,如果安装了Powershell,您都可以访问相同的默认cmdlet。
因此,我想在Windows 7计算机上使用Get-ScheduledTask。我已经安装了Powershell 4。但是,当我运行它时,出现错误:
Get-ScheduledTask : The term 'Get-ScheduledTask' is not recognized as the name
of a cmdlet, function, script file, or operable program. Check the spelling of
the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ Get-ScheduledTask
+ ~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Get-ScheduledTask:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
如果我在Windows 8.1上运行且已随操作系统一起预安装了Powershell 4,则它可以工作。
我可以在Windows 7计算机上获取cmdlet吗?关于Windows 7的Microsoft Get-ScheduledTask页面上没有任何内容,所以我猜不是。
如果不是这样,那就是使用命令行的情况:
scheduled task command line
毫无疑问,有人会将我指向this question,但这是针对Powershell 2的。我使用的是Powershell 4。
现在,我很喜欢不重新发明轮子,但是这个guys scripts看起来是个不错的选择。
最佳答案
Get-ScheduledTask
依赖于Windows 7所不具备的操作系统的基础功能,因此即使使用PowerShell v4,也无法在该操作系统上运行cmdlet。在您的情况下,您可以利用schtasks.exe
或Schedule.Service
COM对象。
您链接的This answer提供了这些方法的最佳概述,但是出于完整性考虑,我将在此处链接相关资源:
schtasks.exe
MS PowerShellPack TaskScheduler module->(利用Schedule.Service
COM对象)
关于scheduled-tasks - Powershell 4 Get-ScheduledTask和Windows,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26658249/