我的powershell脚本今天早上都抛出错误,说明所有功能都无效,New-Object
,Get-Content
等功能我试过了
CTRL C
然后将其粘贴到另一个文件夹(以及其他类似的任务)脚本的目的是为了做到这一点。)我想说,"我用"但我不能。在等了几分钟思考它可能是什么之后,我再次尝试运行一个脚本,它运行起来了。
有没有人碰到这样的事情,这里的问题可能是所有的PowerShell功能都没有用?
更新
错误看起来完全相同:
The term 'New-Object' is not recognized as the name of a cmdlet ...
The term 'Get-Content' is not recognized as the name of a cmdlet ...
根据回复,这证实这是非常不寻常的行为,可能更像是Windows问题。
答案 0 :(得分:2)
您的PSModulePath
系统环境变量可能缺少C:\windows\system32\WindowsPowerShell\v1.0\Modules
,这是PowerShell中所有内置模块的位置。当编写错误的模块替换 PSModulePath
的值而不是追加新路径时,可能会发生这种情况。
验证,运行:
[environment]::GetEnvironmentVariable("PSModulePath","Machine")
C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules\
丢失了吗?如果是这样,请添加它。
没有PowerShell的最简单方法是使用如下所述的GUI:http://www.computerhope.com/issues/ch000549.htm
如果是临时的,则可能已修改了流程级别的变量。可以使用以下方法读取流程级变量:
[environment]::GetEnvironmentVariable("PSModulePath","Process")