另一个任务计划程序未执行PowerShell

另一个任务计划程序未执行PowerShell,powershell,scheduled-tasks,Powershell,Scheduled Tasks,我有一个简单的PowerShell脚本,它只创建一个文件。测试一个更大的PowerShell脚本 在Windows Server 2012 R2上运行-64位 它在管理员帐户下运行 无论用户是否登录,都要运行 以最高权限运行 行动: 程序/脚本 : Powershell.exe(我以这种方式和完整路径进行了尝试) 添加参数:-NoProfile-executionpolicy remotesigned-C:\Scripts\test.ps1文件 获取执行策略:RemoteSigned 将“管

我有一个简单的PowerShell脚本,它只创建一个文件。测试一个更大的PowerShell脚本

在Windows Server 2012 R2上运行-64位

它在管理员帐户下运行

无论用户是否登录,都要运行

以最高权限运行


行动: 程序/脚本 : Powershell.exe(我以这种方式和完整路径进行了尝试)

添加参数:-NoProfile-executionpolicy remotesigned-C:\Scripts\test.ps1文件


获取执行策略:RemoteSigned

将“管理员”添加到: 设置PSSSessionConfiguration-名称Microsoft.PowerShell-ShowSecurityDescriptor

“管理员”具有“作为批处理作业登录”权限 “管理员”在管理员组中

用于测试的PowerShell脚本:

    $text = "Hello World"

    $text | Set-Content TestMyFile.txt
    $text | Out-File TestMyFile.txt
    $text > TestMyFile.txt

    # This is to write into a file or append to the text file created:
    $text | Add-Content TestMyFile.txt
    $text | Out-File TestMyFile.txt -Append
    $text >> TestMyFile.txt
没什么,只是尝试确保任务调度器将执行PowerShell脚本


那么我错过了什么

在输出代码中使用完整路径,对于将来从任务调度器运行脚本时出现的任何问题,在寻求进一步帮助之前,应首先输入日志和
try/catch
块,查看脚本生成的错误/输出。这样做可以帮助你更快地找到答案,同时更快地学习


提示:始终仅在Task Scheduler的“program to run”方面命名程序,因为Task Scheduler使用自己的包装器来执行操作,并且在极少数情况下,如果将整个执行行放在该字段中,它可能会产生不期望的结果。始终将参数放在参数字段中。

您没有使用文件的完整路径,因此它正在将它们写入工作目录(可能不是脚本存储的地方),因此1)您是否有权限在那里写入,2)您是否确实查看了那里?他说“在管理员acc下运行”这可能意味着:1)是2)数据将在%systemroot%\system32处结束。甚至有错误吗?“历史记录”选项卡显示什么?哇,好吧,我没想到文件目录。。。。。我将代码更改为使用目录$text | Out文件C:\Script\TestMyFile.txt