首页/系统/Windows 运维速查/PS7 新语法:三元与空合并运算符
本包目录(413 条)
CMD 常用命令74 条
PowerShell 基础66 条
网络排查41 条服务与进程42 条磁盘与文件43 条用户与权限34 条AD 域与组策略39 条日志与事件38 条远程管理36 条

PS7 新语法:三元与空合并运算符

PowerShell 7 引入三元运算符与空合并运算符,简化条件赋值;5.1 不支持,写兼容脚本要注意。

Windows 运维速查系统更新于 2026-10-12
用途简化条件表达式
语法<条件> ? <真值> : <假值>;<值> ?? <默认值>;变量 ??= 默认
版本PowerShell 7.0+,5.1 直接报语法错误

常用示例

常用示例
$level = $v -gt 90 ? 'HIGH' : 'NORMAL'
$port = $cfg.Port ?? 8080
$name ??= '未命名'
旧版本等价写法:$level = if ($v -gt 90) { 'HIGH' } else { 'NORMAL' }。

易错点

  • 在 5.1 机器上运行含三元运算符的脚本会直接语法报错,跨版本用 if 表达式更稳
  • 嵌套三元可读性差,复杂分支仍建议 if/else

数据来源与参考

  • Microsoft Learn:about_Operators(PS7 新增运算符)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌