我有一个powershell脚本(test.ps1),我想从批处理文件中运行它。批处理文件包含以下内容:
PowerShell –Command “& ‘.\test.ps1’” 001
pause
当我在32位Windows 7计算机上运行批处理文件(作为管理员)时,powershell脚本成功运行。当我尝试在64位Windows 7机器上运行它时,我收到以下错误:
C:\Windows\system32>PowerShell –Command “& ‘.\test.ps1’” 001
The term ‘.\test.ps1’ is not recognised as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if the path was included, verify that the path is correct and try again.
At line:1 char:2
+ & <<<< ‘.\test.ps1’ 001
+ CategoryInfo : ObjectNotFound: (.\test.ps1:String) [], CommandNotFoundException
+ FullyQualifiedErrorID : CommandNotFoundException
有什么想法吗?
由于
答案 0 :(得分:3)
您正在从C:\Windows\system32
运行脚本,并且没有这样的脚本(通常在使用管理员权限启动bat时会发生这种情况)。
更改目录或使用完整路径调用它。
解决此问题的最简单方法 - 在批处理脚本开头设置cd /d %~dp0
以更改脚本所在位置的目录