【问题标题】:how to exec ps1 file from cmd?如何从cmd执行ps1文件?
【发布时间】:2017-10-04 20:06:10
【问题描述】:

我有一个 ps1 文件 Test.ps1,我需要从 cmd 执行它。出于测试目的,此文件只有 1 行:

write "ps1 test successful"

我试图从 cmd 执行这​​个 ps1 文件。我用谷歌搜索,似乎包括以下行可能会有所帮助:

Set-ExecutionPolicy RemoteSigned
write "ps1 test successful"

但是我仍然无法执行此测试。我试过了:

powershell Test
powershell Test.ps1
Test
Test.ps1

cmd 路径上下文设置为 ps1 脚本所在的目录。知道我在这里可能做错了什么吗?

【问题讨论】:

    标签: powershell cmd exec


    【解决方案1】:

    这行得通吗?

    Powershell -ExecutionPolicy Bypass -File .\Test.ps1

    我以前用 .bat 文件做过这个,这就是使用的语法。在这种情况下,您从与 powershell 脚本相同的目录中运行(否则根据需要调整文件名参数)。如果您还没有,您可能需要以管理员身份运行 CMD 提示符。

    【讨论】:

      【解决方案2】:

      使用

      powershell.exe -ExecutionPolicy Bypass -File "C:\dir name\test.ps1"
      

      当然,将C:\dir name\test.ps1 替换为您要运行的脚本的路径和文件名,用" 括起来(双引号)。

      或者,在自己的窗口中启动 PowerShell,然后运行脚本。

      【讨论】:

        【解决方案3】:

        在 macOS 上:

        1. 使用 Homebrew 安装 Powershell:

          brew install --cask powershell

        2. 切换到 Powershell:

          pwsh

        3. 执行脚本:

          ./Test.ps1

        【讨论】:

          【解决方案4】:

          我的 PowerShell 脚本 (Test.ps1):

          echo "trying to test something"
          

          我可以用这个命令在cmd中执行它:

          .\Test.ps1
          

          我的输出:

          trying to test something
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2022-06-23
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-11-02
            • 1970-01-01
            相关资源
            最近更新 更多