如果有条件,可以使用Curly Brackets

时间:2018-05-03 12:43:32

标签: powershell powershell-v2.0 powershell-v3.0 powershell-v4.0

在powershell中,我们遇到了一个特殊的问题,即一个声明在一个系统而不是另一个系统上工作

if (condition)
    DoSomething
  

if(condition)

之后缺少语句块

我知道我可以通过添加大括号{ DoSomething }来修复,但我需要找到为什么会发生这种情况。它是一个Powershell语法升级,它在一个而不是另一个上工作吗?

PS版本在哪里工作

enter image description here

1 个答案:

答案 0 :(得分:1)

我试图复制这个但是无法在我的任何Windows机器,Windows 7,8.1和最新的10(1803)中。

但是,就个人而言,我考虑编写像

这样的代码
if(condition)
    Statement

是不好的做法。

想象一下如果你要评论Statement会发生什么。

if(condition)
    //Statement
OtherStatement

如果你不小心,你可能会让if语句定位一些你不想要的完全不同的代码,这样就会引入一个bug。

如果你绝对需要一个没有大括号的if语句,那么

if(condition) Statement

会更清洁,更不容易出错。但是,我仍然希望在任何条件语句中始终使用{}