Windows 无法从Cmd.exe运行包含“0”的PowerShell脚本&&引用;在其中调用另一个powershell脚本

Windows 无法从Cmd.exe运行包含“0”的PowerShell脚本&&引用;在其中调用另一个powershell脚本,windows,powershell,parallel-processing,Windows,Powershell,Parallel Processing,我有一个名为test.ps1的powershell脚本文件,编写如下: 在ps1文件中,内容包括: & 'C:\Invoke-Parallel.ps1' $Sciptblock = {.....} Invoke-Parallel -scriptblock $Scriptblock -inputobject $(get-content "C:\info.txt") -runspaceTimeout 300 -throttle 30 -NoCloseonTimeOut -quiet 在

我有一个名为test.ps1的powershell脚本文件,编写如下:

在ps1文件中,内容包括:

& 'C:\Invoke-Parallel.ps1'

$Sciptblock = {.....}

Invoke-Parallel -scriptblock $Scriptblock -inputobject $(get-content "C:\info.txt") -runspaceTimeout 300 -throttle 30 -NoCloseonTimeOut -quiet
在windows命令提示符下运行此命令时出现问题,因为“&”没有调用我正在为创建的新脚本使用的脚本(Invoke Parallel.ps1)

当脚本在Powershell窗口内甚至在Powershell ISE中运行时,我可以让它工作,但不能在命令行中运行

请让我知道我需要使用什么命令行来成功运行此命令,或者在windows命令行中无法执行此操作。有人知道如何解决这个问题吗?谢谢

运行此操作时出错:

术语“Invoke Parallel”未被识别为cmdlet的名称, 函数、脚本文件或可操作程序。检查单词的拼写 名称,或者如果包含路径,请验证该路径是否正确,并且
再试一次。在C:\test.ps1:9 char:16+Invoke Parallel基于上面的评论,我认为您希望创建一个批处理文件 然后通过任务计划程序调用,然后启动PowerShell脚本

启动脚本的批处理文件示例:
@echo关闭
powershell-命令“启动进程cmd-argumentlist/C,powershell,'-ExecutionPolicy RemoteSigned',%~dp0\.ps1-动词RunAs-WindowStyle Hidden”

其工作原理和作用: echo off只是为了在启动时看不到命令提示代码 接下来启动Windows命令提示符会话,该会话将启动PowerShell(/C只是向cmd指示在完成后终止并退出会话)
set exciutionpolicy存在于未执行remotesigned的计算机上,因为它仅适用于此实例,所以在
-动词RunAs在管理模式下运行
WindowsStyle是隐藏的,因此整个过程都发生在后台如果不需要,请删除此选项
%~dp0是cmd使用其自身位置作为路径的代码,因此如果使用此代码,请确保批处理文件始终与脚本位于同一文件夹中


我应该添加以使批处理文件创建一个txt文件写入代码并另存为,并将扩展名改为bat而不是txt,然后使用任务计划程序启动批处理文件以实现您的目标

是否要导入模块C:\Invoke Parallel.ps1?如果我使用导入模块,除了将ps1扩展名转换为psm文件之外,我还需要做更多的工作吗?不需要。您甚至可以在Windows命令提示符下导入ps1。在Windows命令提示符下执行此操作的动机是,我可以使用Windows任务计划程序在一天的常规时间运行powershell脚本。jisaak,我尝试过,但它显示:导入模块:未加载指定的模块“invoke parallel.ps1”,因为在任何模块目录中都找不到有效的模块文件。第1行字符:14+导入模块