在一元运算符' - '之后缺少表达式

时间:2017-07-11 12:26:16

标签: .net powershell .net-core

这是我的第一篇文章,因此对任何错误道歉。

我在Windows Powershell中运行了 dotnet 命令,它给了我如何使用它的说明:

Usage: dotnet [host-options] [command] [arguments] [common-options]

Common options:  
  -v|--verbose          Enable verbose output  
  -h|--help             Show help

当我运行命令时

dotnet run -h|--help

它给了我以下错误:

At line:1 char:17
+ dotnet run -h|--help
+                 ~
Missing expression after unary operator '--'.
At line:1 char:15
+ dotnet run -h|--help
+               ~~
Expressions are only allowed as the first element of a pipeline.
At line:1 char:17
+ dotnet run -h|--help
+                 ~~~~
Unexpected token 'help' in expression or statement.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : MissingExpressionAfterOperator

为什么会发生这种情况?为什么命令没有按预期显示帮助?在任何地方搜索过,我都无法得到确定的答案。

1 个答案:

答案 0 :(得分:10)

-v|--verbose表示您可以使用-v--verbose;此上下文中的|BNF'或'符号。

许多选项都是简短形式,带有单个(或几个)字母助记符,或者是长形式,更具描述性。短格式将以单个破折号开始,而长格式以两个短划线开始。

|上下文中的

powershell是一个管道,用于分隔命令,您看到的错误是解释器试图理解--help作为命令:它理解{ {1}}作为一元减号,但在该上下文中无法理解--

您可能想要使用help