连续字符后不允许评论?

Comments not permitted after continuation character?

以下工作正常:

if (  $a -eq 2 `
  -or $a -eq 3 )
  { write-host "Hi" }

但不包括以下内容:

if (  $a -eq 2 ` #...
  -or $a -eq 3 )
  { write-host "Hi" }

为什么?

这也不行:

if (  $a -eq 2 
  -or $a -eq 3 )
  { write-host "Hi" }

原因是您在使用反引号字符时告诉 powershell 转义下一个字符。如果用作一行的最后一个字符,它可以用作行继续字符,因为它随后转义回车符 return 并将其从逻辑行尾标记转换为文字回车符 return 除了将文本移动到下一行的开头之外什么都不做。如果 any 字符放在行中,而不只是注释,它将无法作为行继续字符。你甚至不能在它后面有空格,以使其用作行继续符。