在带有任务计划程序信息的提示符下运行 powershell 时出错 - “不被识别为 cmdlet、函数、脚本文件或可操作的名称..”
Posted
技术标签:
【中文标题】在带有任务计划程序信息的提示符下运行 powershell 时出错 - “不被识别为 cmdlet、函数、脚本文件或可操作的名称..”【英文标题】:Error when running powrshell at prompt with TaskScheduler info - 'is not recognized as the name of a cmdlet, function, script file, or operable ..' 【发布时间】:2022-01-06 09:15:03 【问题描述】:我正在调试为什么我的脚本没有在 TaskScheduler 中正确运行,方法是在服务器上的 powershell ISE 的命令提示符下运行它,就像在 TaskScheduler 中设置的一样:
PS Microsoft.PowerShell.Core\FileSystem::\\w5server\ksupport\C_Adjust> c:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -noninteractive -ExecutionPolicy bypass -Command "& .\\w5server\ksupport\C_Adjust\RunScan_MoveFiles_Admin.ps1"
我收到此错误:
c:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe : & : The term '.\\w5server\ksupport\C_Adjust\RunScan_MoveFil
At line:1 char:1
+ c:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -noninterac ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (& : The term '....Scan_MoveFil:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
es_Admin.ps1' 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:3
+ &
.\\w5server\ksupport\C_Adjust\RunScan_MoveFiles_Admin.ps1
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (.\\w5server\k...Files_Admin.p
s1:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
我也不确定为什么它会像错误消息中那样拆分完整的命令行信息;希望这不是问题的一部分。
我尝试删除 .\w5server...scriptname.ps1 之前的“&”,但得到了相同的错误消息。我以前从来没有给出过这种类型的路径的完整路径,但这就是脚本所在的地方。上次我这样做是在该服务器上的 c:\Scripts\B... 中。
此服务器是 Windows Server 2012 R2。以前,我正在使用的服务器是 2008 R2,我不确定这是否重要。否则我的语法是相同的,除了脚本名称和完整路径。
我看到了这个链接is not recognized as the name of a cmdlet,但我认为它拼写正确。
【问题讨论】:
【参考方案1】:我正在玩我用来在命令行运行它的东西,这是有效的:
PS Microsoft.PowerShell.Core\FileSystem::\\w5server\ksupport\C_Adjust> c:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -noninteractive -ExecutionPolicy bypass -Command \\w5server\ksupport\C_Adjust\RunScan_MoveFiles_Admin.ps1
所以我去掉了双引号,'.' '&' 表示脚本位置。
【讨论】:
以上是关于在带有任务计划程序信息的提示符下运行 powershell 时出错 - “不被识别为 cmdlet、函数、脚本文件或可操作的名称..”的主要内容,如果未能解决你的问题,请参考以下文章
磁盘碎片整理功能无法启动,打开,提示“任务计划程序服务未运行,请启动后再试”,怎么解决?
windows任务计划程序是怎么回事,有啥用途,该怎么设置??
PowerShell 添加任务以使用参数运行 PowerShell 脚本