บทช่วยสอนนี้จะแสดงวิธีตั้งค่าตัวแปรสภาพแวดล้อมในสคริปต์ Bash/Shell โดยใช้คีย์เวิร์ดสำหรับส่งออก
โดยทั่วไป ตัวแปรที่ประกาศในสคริปต์ Bash/Shell จะมีอยู่ภายในขอบเขตของสคริปต์ Bash/Shell ที่รันอยู่เท่านั้น
หากต้องการเผยแพร่ในที่อื่นๆ ให้ตั้งค่าเป็นสิ่งแวดล้อม ตัวแปร – หมายความว่าตัวแปรจะพร้อมใช้งานเมื่อดำเนินการคำสั่งนอกสคริปต์ในระบบของคุณ – ตัวอย่างเช่น ทำให้ตัวแปรพร้อมใช้งานจากบรรทัดคำสั่งหลังจากสคริปต์เสร็จสิ้น
คีย์เวิร์ดที่ส่งออกทำสิ่งนี้ – นี่คือวิธีใช้งาน
ตัวแปรสิ่งแวดล้อมคืออะไร
ตัวแปรสภาพแวดล้อมทำงานเหมือนกับตัวแปรอื่นๆ แต่สามารถใช้ได้ทุกที่ ทั้งสคริปต์ภายใน บนบรรทัดคำสั่ง และกับโปรแกรมที่ทำงานอยู่อื่นๆ
ระบบของคุณกำหนดตัวแปรสภาพแวดล้อมไว้หลายตัวแล้ว ตัวอย่างเช่น โฮมไดเร็กทอรีของคุณพร้อมใช้งานโดยการอ่านตัวแปรสภาพแวดล้อม $HOME .
คุณสามารถดูตัวแปรสภาพแวดล้อมที่ตั้งไว้ทั้งหมดในปัจจุบันได้ด้วยคำสั่ง env:
env
ตั้งค่าตัวแปรสิ่งแวดล้อมด้วย ส่งออก
สคริปต์ต่อไปนี้ testScript.sh, ตั้งค่าตัวแปรสภาพแวดล้อมแล้วออก:
#!/bin/bash export MY_ENV_VAR="Save the environment!"
ตอนนี้ เมื่อสคริปต์ด้านบนทำงาน:
sh ./testScript.sh
ตัวแปร MY_ENV_VAR จะพร้อมใช้งานหลังจากเสร็จสิ้น สิ่งนี้สามารถยืนยันได้โดยการเรียกใช้:
เสียงสะท้อน $MY_ENV_VAR
ตั้งค่าตัวแปรสภาพแวดล้อมแล้วและพร้อมใช้งานทั่วทั้งระบบ .
ที่ printenv คำสั่งยังสามารถใช้เพื่อดูตัวแปรสภาพแวดล้อม
printenv MY_ENV_VAR
ยังคงอยู่หลังจากรีบูต
ตัวแปรด้านสิ่งแวดล้อมกำหนดด้วย ส่งออก จะไม่ยืนยันการรีบูตเครื่องคอมพิวเตอร์ของคุณ หากต้องการตั้งค่าตัวแปรสภาพแวดล้อมอย่างถาวร จะต้องประกาศตัวแปรใน ~/.bashrc ไฟล์.
ไฟล์ ~/.bashrc file เป็นสคริปต์ที่ทำงานทุกครั้งที่คุณเข้าสู่ระบบ โดยเพิ่ม export . ของคุณ คำสั่งดังกล่าว ตัวแปรสภาพแวดล้อมของคุณจะถูกเพิ่มในแต่ละเซสชันที่คุณเข้าสู่ระบบ
nano ~/.bashrc
ด้านบน นาโน ตัวแก้ไขข้อความใช้เพื่อแก้ไขไฟล์ เพิ่มคำสั่งการส่งออกของคุณที่ส่วนท้ายของไฟล์ คำสั่งจะอยู่ที่นั่นหลังจากที่คุณรีบูต:
export MY_ENV_VAR="Save the environment!"
ตัวแปรสภาพแวดล้อมทั้งระบบ
ตัวแปรสภาพแวดล้อมเหล่านี้จะอยู่ที่นั่นสำหรับผู้ใช้ปัจจุบัน .เท่านั้น . หากคุณเป็นผู้ดูแลระบบและต้องการให้ผู้ใช้และกระบวนการทั้งหมดใช้งานได้ ให้เพิ่มบรรทัดใน /etc/environment ไฟล์แทน:
sudo nano /etc/environment