语法坑点
如果有语法错误,建议设置文件编码为UTF8-BOM
函数作为命令执行且有多个时有错误立刻停止运行
## 1. 设置全局错误
$global:ErrorActionPreference = 'Stop'
## 2. 捕获全局错误
trap {
echo "err: $_"
exit 1
}
注释后有Write-Host等调用会导致代码被当成文本输出
- 推荐使用
<# xxx \#>,而不是单行的# xxx
- 不推荐使用
# xxx,会引起很多问题还不知道为什么
switch
## 错误的注释
switch -Exact ($target)
{
## 初始化
"init" {
Invoke-Init
}
}
## 正确的注释
switch -Exact ($target)
{
"init" {
## 初始化
Invoke-Init
}
}