【发布时间】:2013-03-24 16:41:35
【问题描述】:
无论出于何种原因,当我尝试调用我正在编写的 C# 程序,并尝试在命令行中使用“--”传递两个参数时,PowerShell 不会使用我的命令行调用该程序。
例如,我提供命令行:
.\abc.exe foo.txt -- bar --
当我调用它时,C# 程序的 main 只获取命令行参数:
foo.txt bar --
而不是
foo.txt -- bar --
正如预期的那样。
为什么会这样?
顺便说一句,如果我称之为:
.\abc.exe foo.txt '--' bar '--'
它按预期工作。
另外,称它为:
& .\abc.exe foo.txt -- bar --
似乎没有帮助。
我认为这是 PowerShell 怪异的原因是,如果我从 CMD.EXE 运行相同的命令行,一切都会按预期运行。
【问题讨论】:
-
进一步说明。显然,这两个“--”并不是问题的全部。似乎powershell dropbx 第一个'--',即使第二个不存在。似乎 -- 必须对 powershell 有特殊含义。
标签: powershell command-line powershell-2.0