.## 1. บทนำ
ใน Ubuntu และดิสโทร Linux อื่น ๆ ตัวแปรสภาพแวดล้อมมีบทบาทสำคัญในการกำหนดค่าพฤติกรรมของระบบและแอปพลิเคชัน ตัวแปรสภาพแวดล้อมเก็บการตั้งค่าที่ทำให้คุณสามารถปรับแต่งและเพิ่มประสิทธิภาพการทำงานของระบบและโปรแกรมได้ บทความนี้ให้คำอธิบายแบบเป็นขั้นตอนเกี่ยวกับวิธีตรวจสอบ ตั้งค่า ลบ และนำตัวแปรสภาพแวดล้อมไปใช้ใน Ubuntu แม้ผู้เริ่มต้นก็สามารถทำตามได้ เนื่องจากมีตัวอย่างคำสั่งที่เป็นรูปธรรมซึ่งให้ข้อมูลเชิงลึกที่มีคุณค่าสำหรับผู้ดูแลระบบและนักพัฒนาทั้งหลาย
2. ตัวแปรสภาพแวดล้อมคืออะไร?
ตัวแปรสภาพแวดล้อมคือค่าที่ระบบและโปรแกรมอ้างอิงเพื่อเก็บข้อมูลการกำหนดค่าเฉพาะที่ใช้ปรับพฤติกรรมของระบบ ด้วยตัวแปรสภาพแวดล้อมเดียวกัน โปรแกรมเดียวกันอาจทำงานแตกต่างกันไปตามการตั้งค่า และการกำหนดค่าระดับระบบสามารถเปลี่ยนแปลงได้แบบไดนามิก
การใช้งานจริงของตัวแปรสภาพแวดล้อม
ตัวแปรสภาพแวดล้อมมีประโยชน์ในหลายสถานการณ์ เช่น
- PATH : เก็บรายการไดเรกทอรีที่ไฟล์ปฏิบัติการอยู่ คุณสามารถเรียกใช้คำสั่งโดยไม่ต้องพิมพ์เส้นทางเต็ม
- HOME : ชี้ไปยังไดเรกทอรีบ้านของผู้ใช้ ทำให้เข้าถึงการตั้งค่าและไฟล์เฉพาะผู้ใช้ได้
- LANG : จัดการการตั้งค่าภาษาของระบบและกำหนดภาษาที่ใช้สำหรับข้อความระบบและโปรแกรม
3. วิธีดูตัวแปรสภาพแวดล้อม
หลายคำสั่งช่วยให้คุณตรวจสอบตัวแปรสภาพแวดล้อมได้อย่างง่ายดาย คุณสามารถยืนยันค่าตัวแปรที่กำหนดอยู่ในเซสชันเชลล์ของคุณหรือดูค่าของตัวแปรเฉพาะได้
ตรวจสอบตัวแปรสภาพแวดล้อมเฉพาะ
เพื่อดูค่าของตัวแปรสภาพแวดล้อมเฉพาะ ใช้คำสั่ง echo :
echo $PATH
คำสั่งนี้จะแสดงรายการไดเรกทอรีที่เก็บอยู่ในตัวแปร PATH ซึ่งบ่งบอกตำแหน่งที่ค้นหาไฟล์ปฏิบัติการ
ดูตัวแปรสภาพแวดล้อมทั้งหมด
เพื่อแสดงรายการตัวแปรสภาพแวดล้อมทั้งหมดที่กำหนดในเชลล์ปัจจุบัน ใช้คำสั่ง env หรือ printenv :
env
คำสั่งนี้จะแสดงตัวแปรสภาพแวดล้อมทั้งหมดพร้อมค่าของมัน คำสั่ง export -p ก็สะดวกสำหรับตรวจสอบตัวแปรที่ถูกส่งออก
4. วิธีตั้งค่าตัวแปรสภาพแวดล้อม
การตั้งค่าตัวแปรสภาพแวดล้อมชั่วคราว
สามารถตั้งค่าตัวแปรสภาพแวดล้อมชั่วคราวโดยใช้คำสั่ง export ตัวแปรเหล่านี้จะถูกลบเมื่อเซสชันเชลล์สิ้นสุด ทำให้เหมาะกับการใช้งานระยะสั้น
export MY_VARIABLE="hello"
บรรทัดนี้กำหนดค่า “hello” ให้กับตัวแปร MY_VARIABLE เมื่อเชลล์ปิด ตัวแปรจะถูกลบออก
การตั้งค่าตัวแปรสภาพแวดล้อมแบบถาวร
เพื่อกำหนดค่าตัวแปรสภาพแวดล้อมอย่างถาวร ให้เพิ่มลงในไฟล์ .bashrc หรือ .profile การตั้งค่าเหล่านี้จะคงอยู่แม้หลังจากรีบูตระบบ
- เพิ่มลงใน
.bashrc:echo 'export MY_VARIABLE="hello"' >> ~/.bashrc
- เพิ่มลงใน
.profile:echo 'export MY_VARIABLE="hello"' >> ~/.profile
เพื่อให้การเปลี่ยนแปลงมีผล ให้โหลดไฟล์ใหม่ด้วยคำสั่งต่อไปนี้:
source ~/.bashrc
ทำให้ตัวแปรพร้อมใช้งานเมื่อเชลล์เริ่มครั้งต่อไป

5. วิธีลบตัวแปรสภาพแวดล้อม
การลบตัวแปรด้วยคำสั่ง unset
เพื่อลบตัวแปรสภาพแวดล้อม ใช้คำสั่ง unset :
unset MY_VARIABLE
คำสั่งนี้จะลบตัวแปร MY_VARIABLE ทำให้ไม่สามารถอ้างอิงได้
การลบตัวแปรด้วย export -n
คุณสามารถลบตัวแปรสภาพแวดล้อมด้วยคำสั่ง export -n :
export -n MY_VARIABLE
คำสั่งนี้จะปิดการใช้งานตัวแปรสภาพแวดล้อมที่ระบุในลักษณะเดียวกัน
6. การใช้งานขั้นสูง: การประยุกต์ใช้ตัวแปรสภาพแวดล้อมในเชิงปฏิบัติ
การใช้ตัวแปรสภาพแวดล้อมในสคริปต์
การใช้ตัวแปรสภาพแวดล้อมในสคริปต์ทำให้สามารถเปลี่ยนแปลงพฤติกรรมได้แบบไดนามิก ตัวอย่างด้านล่างใช้ค่าของ MY_VARIABLE เพื่อกำหนดเงื่อนไขการทำงาน:
#!/bin/bash
if [[ $MY_VARIABLE == "production" ]]; then
echo "本番環境です"
else
echo "開発環境です"
fi
This approach allows scripts to behave differently depending on the execution environment.
ตัวแปรสภาพแวดล้อมระดับระบบ
เพื่อกำหนดค่าตัวแปรสภาพแวดล้อมระดับระบบ ให้แก้ไขไฟล์ /etc/environment ตัวแปรที่ตั้งค่าในที่นี้จะมีผลกับผู้ใช้และเชลล์ทั้งหมด
sudo nano /etc/environment
เพิ่มตัวแปรตามนี้:
MY_VARIABLE="hello"
การตั้งค่าใหม่จะมีผลหลังจากรีบูต
7. การแก้ไขปัญหา
เมื่อตัวแปรสภาพแวดล้อมไม่ทำงานตามที่คาดหวัง
หากตัวแปรสภาพแวดล้อมไม่ถูกนำไปใช้ตามที่คาดไว้ ให้โหลดการตั้งค่าใหม่ด้วยตนเองโดยใช้คำสั่ง source:
source ~/.bashrc
หรืออีกวิธีหนึ่งคือการรีสตาร์ทเชลล์ (ปิดและเปิดเทอร์มินัลใหม่) ก็จะทำให้การตั้งค่าใหม่ทำงาน
ตัวแปรหายไปหลังรีบูต
หากตัวแปรสภาพแวดล้อมหายไปหลังรีบูต อาจเป็นเพราะไม่ได้เขียนลงในไฟล์ .bashrc หรือ .profile อย่างถูกต้อง ตรวจสอบไวยากรณ์ให้ถูกต้องและโหลดใหม่ด้วยคำสั่ง source
8. สรุป
การจัดการตัวแปรสภาพแวดล้อมใน Ubuntu มีความสำคัญต่อการดูแลระบบและกระบวนการพัฒนาที่มีประสิทธิภาพ บทความนี้ได้แนะนำพื้นฐานรวมถึงวิธีการตรวจสอบ ตั้งค่า และลบตัวแปรสภาพแวดล้อมด้วยคำสั่งที่ชัดเจน นำแนวปฏิบัติเหล่านี้ไปใช้ในงานประจำวันของคุณเพื่อทำให้การจัดการระบบเป็นไปอย่างราบรื่นและเพิ่มประสิทธิภาพการทำงาน.


