เมื่อผมทำงานในทุบตีฉันได้รับข้อผิดพลาดexport $PATH
not a valid identifier
ทำไม?
เมื่อผมทำงานในทุบตีฉันได้รับข้อผิดพลาดexport $PATH
not a valid identifier
ทำไม?
คำตอบ:
การรันexport $PATH
จะพยายามส่งออกตัวแปรที่มีชื่อเท่ากับค่าของ$PATH
(หลังจากการแยกคำ ) export /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
นั่นคือมันเทียบเท่ากับการเขียนสิ่งที่ต้องการ และเนื่องจาก/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ไม่ใช่ชื่อตัวแปรที่ถูกต้องจึงล้มเหลว สิ่งที่คุณต้องการจะทำคือexport PATH
export
(เทียบเท่าdeclare -x
) ใน Bash ทำให้ตัวแปรพร้อมใช้งานสำหรับ subshells
หากต้องการพิมพ์ค่าของตัวแปรอย่างปลอดภัยและ readably printf %q "$PATH"
ใช้
export
เคยทำงานแบบนั้นใน Bash
คำสั่งต่อไปนี้export $PATH=somePath
จะกลับมาnot a valid identifier
และนั่นเป็นเพราะ$
ก่อนPATH
ตัวแปร
วิธีการแก้:
export PATH=somePath
คุณควรใช้วิธีนี้:
export PATH=$PATH:/something/bin
แทน:
export $PATH=$PATH:/something/bin
เพียงแค่ลบ$
ป้ายจากด้านซ้ายมือ
คุณอาจต้องการเพิ่ม $ PATH ต่อท้ายตัวแปร PATH ที่มีอยู่หรือไม่?
export PATH=$PATH:/something/bin
$
คือ“ value of” คุณกำลังส่งออกตัวแปรPATH
ไม่เข้าถึงความคุ้มค่าดังนั้นจึงไม่มีexport PATH
$