powershell if语句奇怪的行为

Mat*_*ode 2 powershell

所以这是一个愚蠢的问题.有人可以解释这有什么意义吗?我真的不知道还有什么要问的.为什么if语句会改变变量的值?

PS C:\Users\HD2> $format = 6

PS C:\Users\HD2> $format
6

PS C:\Users\HD2> if($format = 1){write-host "woo"}
woo

PS C:\Users\HD2> $format
1
Run Code Online (Sandbox Code Playgroud)

Joh*_*ert 5

在powershell中,=运算符用于为变量赋值.要进行比较,请使用-eq运算符.