从 PowerShell 打开并在 cmd 上运行命令

vil*_*asv 2 powershell cmd batch-file

在 SO 上多次问过类似的问题,通常答案是以下之一:

  • 在 PowerShell 上运行相同的命令,因为它也在那里
  • 运行cmd然后命令
  • 调用cmd传递/c

以及我已经尝试过的其他一些事情。但我的问题是:我有一个拒绝在 PowerShell 上运行的特定程序 ( cntkpy34.bat) 。也就是说,使用上述任何解决方案,我仍然会收到“请从常规 Windows 命令提示符中执行此脚本”。

所以我真正想要的是调用一个新cmd.exe窗口并在其上运行命令。如何在 PowerShell 脚本中实现这一点?

编辑:检查批处理文件,这是它验证外壳的方式:

if /I "%CMDCMDLINE%" neq ""%COMSPEC%" " (
    echo.
    echo Please execute this script from inside a regular Windows command prompt.
    echo.
    exit /b 0
)
Run Code Online (Sandbox Code Playgroud)

即使开始一个新的cmd.exe过程也不会这样做。