- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经设置了一个非常简单的 .bat 文件来执行几个命令以节省我每次都输入它们的时间,但是这些过程需要在 powershell 7 中运行。
如果我手动运行 powershell 7.0.3 然后运行命令一切正常,但是运行 .bat 脚本开始
powershell -Version 7.0.3 -Command {XXXXX};
向我显示一条消息“无法启动 Windows PowerShell 版本 7.0.3,因为它未安装。”
如果我尝试在没有版本号的情况下运行它,那么它会在 5.1.x 中运行,然后失败,因为它需要 6+。
最佳答案
tl;dr
作为Lee_Dailey注意,您必须使用pwsh.exe
,不是 powershell.exe
, 要启动 PowerShell [Core] v6+ 版本,您必须调用所需版本的特定可执行文件。
在最简单的情况下:
pwsh -Command "XXXXX"
请注意,我已将 {XXXXX}
替换为 "XXXXX"
,因为您无法直接执行脚本 block ({...}
) 来自外部 PowerShell - 只需将命令作为字符串提供。
鉴于此 - 与 Windows PowerShell 不同 - 您可以安装 多个 PowerShell [Core] 版本并排:
运行 pwsh -version
(原文如此;见下文)以报告系统路径中的版本(在 PATH
中列出的目录中最先出现的实例> 环境变量,$env:PATH
).
如果它不是您想要的目标,您将必须通过其完整路径调用它:
如果您想依赖标准安装位置,您可以在 Windows 7.0 版上使用以下位置:"C:\Program Files\PowerShell\7\pwsh .exe"
要可靠地确定目标版本的可执行文件位置,请为其打开交互式控制台并运行 (Get-Process -Id $PID).Path
powershell.exe
的 -Version
参数,Windows PowerShell CLI,< em>不允许只允许您启动任何 PowerShell 版本,只允许旧 版本的Windows PowerShell:
-Version 2
,即使您之前安装了所需的 .NET Framework 旧版本,即使这样也只能成功。-Version 1
和 -Version 2
都将从 2.0 版开始,而 -Version 3
、-Version 4
和 -Version 5
被有效忽略并运行 v5.1 - 使用 $PSVersionTable.PSVersion
验证虽然 -Version
参数 仍然存在于 pwsh.exe
中,但 PowerShell [Core] v6+ CLI ,它的含义已经改变:它现在只是报告一个版本号,即目标可执行文件的自己的(因此不带任何参数)。
关于powershell - .Bat 文件无法运行 powershell 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63882509/
这段代码: class Bat{ public: Bat(); Bat(int i=0); virtual ~B
有没有办法摆脱整个测试文件?整个测试套件? 类似的东西 @test 'dependent pgm unzip' { command -v unzip || BAIL 'missing depend
我有一些 bats我运行以测试某些功能的脚本如何在脚本中回显 bats 文件名? 我的 bats 脚本如下所示: #!/usr/bin/env bats load test_helper echo $
我想创建一个 bat 文件,该文件创建一个文件列表和路径(MyList.txt)。将该文件保存到运行 bat 文件的同一目录中。 这就是我试图用 MyList.txt 完成的。我也想整理文件。 fil
有人可以教我如何使用 .bat 文件或建议更改代理设置吗? 老实说,我找不到有关的好信息。 我需要一个 .bat 文件,它将使用特定的代理 IP 和端口更改我的 Internet 设置(代理)。 谢谢
我想知道如何创建一个 bat 文件来执行在特定目录中找到的所有其他 bat 文件? 最佳答案 单向 for %%f in (c:\xxx\*.bat) do ( call %%f ) (要从同一
我想知道如何创建一个 bat 文件来执行在特定目录中找到的所有其他 bat 文件? 最佳答案 单向 for %%f in (c:\xxx\*.bat) do ( call %%f ) (要从同一
我需要创建 2 个 .bat 文件: 转储我的 PostgreSQL 数据库 恢复 PostgreSQL 数据库 如何将变量(数据库名称、登录名、密码等)移出到外部文件,以便两个 .bat 文件可以使
我正在尝试设置 Minecraft 服务器,实际上一切正常。我正在使用 launch.bat 文件启动服务器。 "%ProgramFiles%\Java\jre1.8.0_20\bin\java.ex
我在 Windows 2003 系统上,需要编写脚本来删除和创建 WebSphere Application Server 中的配置文件。这需要我调用 manageprofiles.bat 两次,一次
这里相对简单的事情没有一个容易发现的答案......我已经尝试了 start、/K 标志等的变体,但是每当我的批处理文件命中 servicecontroller 时行并运行该命令,它完成了命令,但之后
我正在尝试获取我的 commit-build.bat执行其他 .BAT 文件作为我们构建过程的一部分。 commit-build.bat的内容: "msbuild.bat" "unit-tests.b
我有一个要获取的实用程序脚本,其中包含两个提示用户输入的函数; anykey 和 yesno。 如何测试提示?提示文本不会显示在 $output 中。 此外,如何强制 yesno 中的 while 循
我有一个要获取的实用程序脚本,其中包含两个提示用户输入的函数; anykey 和 yesno。 如何测试提示?提示文本不会显示在 $output 中。 此外,如何强制 yesno 中的 while 循
我有一个 bat 文件,它根据文件名将每个文件放在一个文件夹中。但是,当我运行 bat 文件时,它也会将 bat 文件放在一个文件夹中。我想排除 bat 文件扩展名,因为我必须进入每个文件夹并剪切 b
我的机器上安装了 python.exe(多次),但没有安装 python.bat。我正在尝试构建 Chromium 嵌入式框架,主批处理文件显示 @echo off python.bat tools\
我想使用 master.bat 从不同位置执行多个 .bat 文件 我试过 Master.bat REM Echo Launch dir: "%~dp0" REM Echo Current dir:
嘿社区,我需要知道如何运行 .bat 文件以将文本字符串写入运行 .jar 的 .bat 文件以使用该命令。 用于运行其他批处理文件中的命令的批处理文件也将从 Windows 任务计划程序运行。 顺便
在C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC目录下,有两个.bat文件: ./vcvarsall.bat bin/vcvars32.b
我想在 tomcat 上部署时在 war 文件之外设置 application.properties 文件,这是我的观察 1. 当我将 jvm 属性设置为 spring.config.location
我是一名优秀的程序员,十分优秀!