3 回答
喵喵时光机
TA贡献1846条经验 获得超7个赞
在大多数类似C的语言中,我故意将花括号放在我认为它们使代码最容易阅读的位置。
PowerShell的解析器识别出明显没有完成的语句,然后转到下一行。例如,想象一个带有可选脚本块参数的cmdlet:
Get-Foo {............}
如果脚本块很长,则可能需要编写:
Get-Foo
{
......
......
......
}
但这是行不通的:解析器将看到两个语句。第一个是Get-Foo,第二个是脚本块。相反,我写道:
Get-Foo {
......
......
......
}
我可以使用换行符(`),但这会使代码难以阅读,并引发bug。
因为这种情况要求开放括号在上一行,所以我到处都遵循这种模式:
如果(条件){
.....
}
请注意,if语句需要使用语言语法中的脚本块,因此解析器将在脚本块的下一行中查找,但是为了保持一致,我将大括号放在同一行上。
同样,在长管道的情况下,我在管道字符(|)之后中断:
$ project.Items |
?{$ _。Key -eq“ ProjectFile”} |
%{$ _。Value} |
%{$ _。EvaluatedInclude} |
%{
......
}
- 3 回答
- 0 关注
- 1243 浏览
添加回答
举报
0/150
提交
取消