【发布时间】:2018-09-06 11:09:12
【问题描述】:
我想这很简单,但我却无法理解,我有一个工作的 Powershell 脚本,我希望在 Windows 10 中作为计划任务运行,但是该脚本不会从任务计划程序执行。
脚本是 hider.ps1
$fs = New-Object -ComObject scripting.filesystemobject
Get-ChildItem "D:\TV Shows\" -force | Where-Object {$_.psiscontainer} | ForEach-Object {
if($fs.getfolder($_.fullname).size -lt 20mb) {$_.attributes = "directory,hidden"}
else{$_.attributes = "directory"}
}
这会隐藏目录中的空文件夹
在任务调度器中我放了
启动程序Powershell
参数-ExecutionPolicy Bypass –File "F:\Xaved Files\Hider ps 1"
【问题讨论】:
-
您在任务计划程序中看到终止状态了吗?是 0x0 还是错误?
-
我得到任务调度程序成功完成任务,返回码为 1
-
So.. Microsoft 将其标识为 1 或 0x1:调用了不正确的函数或调用了未知函数。这可能不是一个解决方案,但请尝试以下操作: 1-创建一个调用您的脚本的批处理文件并验证它是否有效 2-安排您的批处理,将起始文件夹指示为批处理和脚本的目录。有用吗?
-
@andreataroni86 嗨,Andrea,谢谢 - 该脚本确实有效,如果我直接在 Powershell 中运行它,它工作正常,我已经尝试了你的建议,但是当调用脚本时它仍然没有运行。这一定与 Windows 10 权限有关,但我没有运气
-
您是否使用本地管理员配置文件配置任务并在任务配置中选中“使用最高权限”?
标签: powershell task scheduler