ใช้ตัวแปรสภาพแวดล้อมในแอพเทอร์มินัลบน Mac
เชลล์จะใช้ตัวแปรสภาพแวดล้อมเพื่อจัดเก็บข้อมูล เช่น ชื่อของผู้ใช้ปัจจุบัน ชื่อของคอมพิวเตอร์โฮสต์ และเส้นทางเริ่มต้นไปยังคำสั่งต่างๆ ตัวแปรสภาพแวดล้อมสืบทอดโดยคำสั่งทั้งหมดที่ดำเนินการในบริบทของเชลล์ และบางคำสั่งจะขึ้นอยู่กับตัวแปรสภาพแวดล้อม
คุณสามารถสร้างตัวแปรสภาพแวดล้อมและใช้ตัวแปรเหล่านั้นในการควบคุมลักษณะการทำงานของคำสั่งได้โดยไม่ต้องแก้ไขที่ตัวคำสั่ง ตัวอย่างเช่น คุณสามารถใช้ตัวแปรสภาพแวดล้อมเพื่อทำให้คำสั่งพิมพ์ข้อมูลดีบั๊กไปที่คอนโซลได้
หากต้องการตั้งค่าค่าของตัวแปรสภาพแวดล้อม ให้ใช้คำสั่งเชลล์ที่เหมาะสมเพื่อเชื่อมโยงชื่อตัวแปรกับค่า ตัวอย่างเช่น หากต้องการตั้งค่าตัวแปร PATH ไปที่ค่า /bin:/sbin:/user/bin:/user/sbin:/system/Library/
คุณจะป้อนคำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัล:
$ PATH=/bin:/sbin:/user/bin:/user/sbin:/system/Library/ export PATH
หากต้องการดูตัวแปรสภาพแวดล้อมทั้งหมด ให้ป้อน:
$ env
เมื่อคุณเปิดใช้แอพจากเชลล์ แอพจะสืบทอดสภาพแวดล้อมของเชลล์เป็นจำนวนมาก ซึ่งรวมถึงตัวแปรสภาพแวดล้อมที่ส่งออกด้วย รูปแบบการสืบทอดนี้จะเป็นวิธีที่มีประโยชน์สำหรับการกำหนดค่าแอพแบบไดนามิคได้ ตัวอย่างเช่น แอพของคุณสามารถตรวจหาสถานะ (หรือค่า) ของตัวแปรสภาพแวดล้อมและเปลี่ยนแปลงลักษณะการทำงานของตัวแปรตามนั้นได้
แต่ละเชลล์จะรองรับระบบความหมายที่แตกต่างกันสำหรับการส่งออกตัวแปรสภาพแวดล้อม สำหรับข้อมูล ให้ดูหน้าคู่มือของเชลล์ที่คุณต้องการ
แม้ว่ากระบวนย่อยของเชลล์จะสืบทอดสภาพแวดล้อมของเชลล์นั้น แต่เชลล์ก็เป็นบริบทการดำเนินการที่แยกจากกันซึ่งไม่แชร์ข้อมูลสภาพแวดล้อมให้กัน ตัวแปรที่คุณตั้งค่าในหน้าต่างเทอร์มินัลบานหนึ่งจะไม่ถูกตั้งค่าในหน้าต่างเทอร์มินัลบานอื่นๆ
หลังจากที่คุณปิดหน้าต่างเทอร์มินัลแล้ว ตัวแปรที่คุณตั้งค่าในหน้าต่างนั้นจะหายไป หากคุณต้องการให้ค่าของตัวแปรยังคงอยู่ในเซสชั่นต่างๆ และอยู่ในหน้าต่างเทอร์มินัลทั้งหมด คุณต้องตั้งค่าในสคริปต์เริ่มต้นระบบของเชลล์ โปรดดูส่วน “การเรียกใช้” ของหน้าคู่มือแบช สำหรับข้อมูลเกี่ยวกับการแก้ไขสคริปต์เริ่มต้นระบบของเชลล์แบชของคุณ (~bashrc) เพื่อเก็บตัวแปรและการตั้งค่าอื่นๆ ไว้ในหลายเซ็สชั่น