【问题标题】:powershell command Line arguments get lost if directly running from CMD如果直接从 CMD 运行,powershell 命令行参数会丢失
【发布时间】:2015-10-27 15:48:15
【问题描述】:

需要帮助

例子

工作:C:\SDK>powershell TESTPS1.ps1 a1 a2 a3

不工作:C:\SDK>.\TESTPS1.ps1 a1 a2 a3

在上面的示例中,两个命令都运行脚本,但第二个命令正在运行没有 powershell 作为前缀的脚本,不会捕获 args 中的参数。

Powershell 是 ps1 扩展的默认应用启动器。

脚本:TESTPS1.ps1

------------------------------------------

write-host "运行脚本"

写入主机 $args

write-host "脚本完成!!"

------------------------------------------

【问题讨论】:

标签: powershell powershell-2.0 powershell-3.0


【解决方案1】:

.\file 将在默认应用程序中打开它。默认情况下,这应该是 .ps1 文件的 notepad.exe。 .ps1 文件的类映射可能尚未设置为正确传递参数。启用此功能存在潜在的安全风险,默认情况下未启用是有原因的。

关于如何手动执行此操作,您需要查看设置自定义注册表类,如 .ps1 %1

【讨论】:

    猜你喜欢
    • 2018-03-14
    • 2021-09-13
    • 2019-04-17
    • 2018-04-11
    • 1970-01-01
    • 2014-09-16
    • 1970-01-01
    • 2021-07-05
    • 1970-01-01
    相关资源
    最近更新 更多