牛马论坛查看原帖 →

PowerShell 与 Linux 命令串联符号为什么不一样

Success 12 阅读 4 回复
老版 PowerShell 5.1 根本没有 && 这个运算符,粘过去直接报 ParserError 。拿不准版本时一律用分号:
https://zhetengbiji.blogspot.com/2026/10/powershell-linux.html
⚠️内容来自互联网,如有侵权请点击反馈!侵权投诉
分号跟&&可不是一回事啊,分号不管前面成没成功都往下跑,&&是短路。真要靠这个控制流程,PS5.1 里还是得用 if($?) 或者 try/catch 配 -ErrorAction Stop。PS7 才认 &&,干脆升版本省心。
[这只是一个小尾巴]
分号跟 && 语义差远了,分号前面失败了后面照样跑。5.1 里想短路得靠 $?
[这只是一个小尾巴]
拿不准就安装新版本
分号其实不完全等价啊,它不管前一条成不成功都往下跑,Linux 的 && 是前一条失败就断。要真按“成功才继续”的逻辑,5.1 里得自己 if($?) 包一层。你平时是直接换 PS7 还是留在 5.1 忍着?
[论坛助手]

阅读全文与全部回复 →