如何使用需要从命令提示符/批处理文件引用的参数来调用 PowerShell Start-Process 命令?

2024-02-24

我在尝试执行一个命令时收到此错误PowerShell:

我在尝试着exec这个命令:

powershell.exe Start-Process -FilePath "C:\Windows\System32\attrib +h +s "%CD%"" -Verb runAs

有人可以帮我弄清楚为什么会发生这种情况以及如何解决它吗?


有人可以帮我弄清楚为什么会发生这种情况吗?

The -FilePath的参数Start-Processcmdlet 需要可执行文件的名称或路径file其本身,不是一个整个命令行.

The 论点传递给指定的可执行文件-FilePath必须通过分别地, as an array,通过-ArgumentList (-Args) 范围。

当从以下位置拨打电话时cmd.exe(批处理文件),从概念上讲,传递整个命令行进行评估会更清晰电源外壳在一个单一的,"- 附上论点:

powershell.exe -Command "Start-Process -Verb RunAs -FilePath attrib.exe -Args +h, +s, '\"%CD%\"'"

注意需要转义%CD% value doubly,将其包含在'首先是为了 PowerShell,然后是\"里面: 外面'确保 PowerShell 本身将该值识别为单个参数,并且嵌入的\"引用确保最终的目标程序,attrib.exe,也将该值视为单个参数。

这种双重转义的需要是不幸的,并且不应该是必要的——它在这个 GitHub 问题 https://github.com/PowerShell/PowerShell/issues/5576.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用需要从命令提示符/批处理文件引用的参数来调用 PowerShell Start-Process 命令? 的相关文章

  • Windows批处理支持异常处理吗?

    Windows批处理编程支持异常处理吗 如果没有 是否有任何方法可以有效地模拟批处理文件中的异常处理 我希望能够在批处理脚本中的任何 CALL 级别的任何位置 抛出异常 并重复弹出 CALL 堆栈 直到找到活动的 TRY 块 然后 CATC
  • 如何创建自定义 Powershell 运算符?

    是否可以在 Powershell 中创建自定义运算符 而且 我该怎么做呢 我搜索过谷歌 但没有任何结果 我特指一个中缀运算符 示例列表 包含 元素 我已经创建了 cmdlet 使用 Powershell 和 C 模块等 所以我只需要大概的内
  • 如何在批处理文件中测试当前驱动器号?

    我正在尝试编写一个批处理文件 该文件获取运行批处理文件的驱动器号 并使用它的 IF 语句 例如如果字母是M 则会跳转到标签 mSection 这可能吗 您可以使用 d0 来获取驱动器号 像这样的东西 IF d0 M CALL mSectio
  • Conda 无法在 Powershell 中激活

    我已经在我的 Windows 10 笔记本电脑上安装了 anaconda 我正在尝试激活名为的Python环境pyenv 首先 我检查conda env list在我的笔记本电脑中 这是 powershell 上的输出 PS C Users
  • 如何在 PowerShell 中使用参数执行外部程序?

    我读过这个答案堆栈溢出 https stackoverflow com questions 1673967 how to run exe in powershell with parameters with spaces and quote
  • 使用模板时什么时候应该使用关键字“typename”[重复]

    这个问题在这里已经有答案了 我最近一直在做一个小项目 但我无法弄清楚一些事情 我得到了一个 h 文件 其中包含一个使用类型名模板的类 那个班级里面有一个私人班级 template
  • SMART 硬盘信息 Powershell [重复]

    这个问题在这里已经有答案了 我正在寻找一种通过可能的 powershell 来获取任何给定设备上硬盘驱动器的 SMART 数据的方法 我已经通过 CMD 和 powershell 尝试过 WMI 命令 但无法获得我正在寻找的适当数据 获取
  • 在Powershell中,如何设置$?不将该值发送到管道?

    PS gt gci C lt
  • 午夜后时间设置不正确

    我使用以下命令以更易读的格式获取当前日期 时间 set day date 4 2 set mth date 7 2 set yr date 10 4 set hur time 0 2 set min time 3 2 set bdate d
  • 语法高亮是如何构建的?

    我现在正在使用 Lazarus 构建一个开发人员编辑器 作为每个优秀的开发人员编辑器 它需要有语法突出显示 因此我想知道一些事情 语法高亮通常是如何构建的 使用许多ifs 更改 a 上的字体TextField TSynEdit这样做很好吗
  • Powershell:启动进程不将参数传递给 cmd.exe

    这些是在 powershell 控制台 Windows 10 中运行的命令 username Username password Password securePassword ConvertTo SecureString password
  • 如何使用 Get-ChildItem 仅获取目录?

    我正在使用 PowerShell 2 0 我想通过管道输出某个路径的所有子目录 以下命令输出所有文件和目录 但我不知道如何过滤掉文件 Get ChildItem c mypath Recurse 我尝试过使用 Attributes获取属性
  • PowerShell 与 MongoDB C# 驱动程序方法不兼容?

    由 C 泛型引起的最新 MongoDB 驱动程序的问题 Cannot find an overload for GetCollection and the argument count 1 我可能可以使用其他没有泛型的 GetCollect
  • Powershell脚本命令持久化

    我开始学习 Powershell 并编写一个模块 psm1 来存储我的函数 然后我将这段代码插入到模块中 以便在修改模块时重新加载模块 function reload Remove Module init Import Module F S
  • 自动递增 EC2 实例名称

    我在 Stackoverflow 上看到很多问题 询问是否有办法自动递增实例名称 例如 foo1 foo2 fooN 我想看看是否有办法在 Powershell 中执行此操作 我正在使用 AutoLaunchConfiguration AS
  • 该表达式的类型为 int,但此处与 unit 类型一起使用

    我试图在 F 中获得与此 vb net 代码完全相同的 非功能性的 Function FastPow ByVal num As Double ByVal exp As Integer As Double Dim res As Double
  • 在powershell中检查文件是否可读且正常

    我是 powershell 新手 我想检查文件是否可读且正常 在 unix 中 我们可以使用 f 和 r 在一行中完成此操作 例如 以下 shell 脚本函数接受文件名作为参数并检查文件的可读性和规律性 与此等效的 powershell 是
  • 从 C# 调用时无法识别 Powershell 命令

    这是这个的延续Question https stackoverflow com questions 66280000 powershell object returns null 66280138 noredirect 1 comment1
  • 如何比较表中最后一个和倒数第二个条目的值?

    我在 Oracle 中有一个名为quotes 的表 其中包含两列 date 和value 我想比较表中最后一个条目和倒数第二个条目的值 在此示例中 我想获取日期13 1 和 11 1在一行中以及每个日期的值之间的差异 10 5 5 报价表
  • 如何在 powershell 中使用正则表达式选择“catch”代码块?

    我正在尝试分析多个目录中的大量 powershell 脚本 并且希望将任何 Catch 代码块拉入列表 变量中 我正在尝试编写一个正则表达式来选择以下格式的任何块 Catch write Host Function MyInvocation

随机推荐