我已经编写了一个基本脚本来执行并发送带附件的电子邮件,我已在PowerShell中对此进行了测试。然而,当我尝试创建这个作为一个任务调度,我得到了以下错误:错误:“该术语不被识别为cmdlet的名称”
但是我完全相同的代码执行没有在PowerShell中的问题。
这是我的任务计划程序视图:
我缺少什么?我已经设置了执行策略,所以这不是问题,我已经测试了我的代码,并且没有任何问题。
我已经编写了一个基本脚本来执行并发送带附件的电子邮件,我已在PowerShell中对此进行了测试。然而,当我尝试创建这个作为一个任务调度,我得到了以下错误:错误:“该术语不被识别为cmdlet的名称”
但是我完全相同的代码执行没有在PowerShell中的问题。
这是我的任务计划程序视图:
我缺少什么?我已经设置了执行策略,所以这不是问题,我已经测试了我的代码,并且没有任何问题。
使用-File
参数,而不是:
-File "C:\path\to\your.ps1"
PowerShell中的调用运算符(&
)只能内部PowerShell的,所以你需要把它的参数字符串中:
"& 'C:\path\to\your.ps1'"
虽然这将也有一些缺点,最重要的是它只会返回0(成功)或1(失败)作为退出代码,而不是脚本的实际退出代码。
您的参数需要包含-Command
参数,而不仅仅是您想要运行的代码。另外,要运行的代码需要是字符串,而不是原始的Powershell代码,否则命令行将尝试解释它。参数设置为:
-Command '&"C:\Users\Martyn\Documents\Powershell Scripts\Working.ps1"'
或者,你可以直接尝试-File
参数,虽然有已知的问题吧:
-File "C:\Users\Martyn\Documents\Powershell Scripts\Working.ps1"
嗨,我重新命名文件夹PowerShell脚本没有空间,这解决了问题。然而,我不明白,因为我相信“与”会意味着这不是一个问题? –