เกิดข้อผิดพลาดในการใช้คำสั่ง if พร้อมเงื่อนไข -AND และตัวแปร 2 ตัว [ซ้ำกัน]

ในสคริปต์ปัจจุบันของฉัน ฉันได้กำหนดตัวแปร 2 ตัวที่ด้านบนของสคริปต์:

$errorcode = 0
$time_errorcode = 0

ส่วนที่เหลือของสคริปต์ประกอบด้วย 2 foreach ลูปสำหรับตัวแปรแต่ละตัวเหล่านี้ โดยพื้นฐานแล้วถ้าการวนซ้ำสำเร็จ ตัวแปรจะอยู่ที่ 0 และหากการวนซ้ำล้มเหลว ตัวแปรจะเปลี่ยนเป็น 1 ฉันกำลังพยายามหาคำตอบว่าฉันจะ "ออก" สคริปต์ด้วยโค้ดทางออกที่ฉันต้องการได้อย่างไร โดยขึ้นอยู่กับว่า หรือไม่ forloops เหล่านี้สำเร็จหรือล้มเหลว วิธีที่ฉันทำมีดังนี้:

if ($errorcode = 1 -and time_errorcode = 1){exit 0"}
if ($errorcode = 1 -and $time_errorcode = 0){exit 1"}
if ($errorcode = 0 -and $time_errorcode = 1){exit 2"}

ปัญหาที่ฉันพบคือ PowerShell บอกฉันว่าตัวอย่างนี้: if ($errorcode = 0 -and $time_errorcode = 1) ไม่ถูกต้อง ข้อผิดพลาดที่ฉันได้รับคือ:

ข้อมูลเข้าของผู้ปฏิบัติงานที่ได้รับมอบหมายจะต้องเป็นอ็อบเจ็กต์ที่สามารถรับมอบหมายได้ เช่น ตัวแปรหรือคุณสมบัติ

ฉันเดาว่าฉันไม่รู้วิธีเปรียบเทียบตัวแปร 2 ตัวนี้ด้วยกันอย่างถูกต้องเพื่อให้ได้โค้ดทางออกที่ฉันต้องการ ขั้นตอนที่ดีที่สุดในการทำเช่นนี้คืออะไร?


person RaptorPete    schedule 12.10.2018    source แหล่งที่มา
comment
ใช้ -eq แทน = if (($errorcode -eq 1) -and ($time_errorcode -eq 1))   -  person lit    schedule 12.10.2018
comment
ดังที่ @lit พูด ให้ใช้ตัวดำเนินการ -eq แทน = ใน PowerShell เครื่องหมายเท่ากับคือตัวดำเนินการมอบหมาย ในขณะที่ -eq ถูกใช้เพื่อความเท่าเทียมกันอย่างเคร่งครัด คุณกำลังกำหนดตัวแปรใหม่ให้กับค่าเหล่านั้นในคำสั่งของคุณ   -  person Peter Kay    schedule 12.10.2018