How to fix “unary operator expected error” in bash script
หากเขียน shell script แล้วเมื่อเวลารันทดสอบเกิด error ตามตัวอย่างด้านล่าง
[: =: unary operator expected error
ให้ลองตรวจสอบเงื่อนไข if ในบรรทัดที่ฟ้อง error ดูว่าตัวแปรมีค่าหรือไม่ และมีการเขียน code แบบ [ $Ans = “Y” ] หรือไม่
ถ้าใช่ให้ลองให้ไขเป็น
1 2 3 |
[[ $Ans = "y" ]] |
* ถ้าหากใช้ [[ เราไม่ต้องกังวลเรื่องตัวแปรว่ามีค่าหรือไม่
หรือ
1 2 3 |
[ "$Ans" = "y" ] |