ฉันได้ตั้งค่าตัวแปรสภาพแวดล้อมของฉันโดยใช้/etc/profile:
export VAR=/home/userhome
ถ้าอย่างนั้นฉันecho $VARก็แสดงให้เห็น/home/userhome
แต่เมื่อฉันใส่การอ้างอิงตัวแปรนี้ลงใน/etc/init.d/servicenameไฟล์มันไม่สามารถหาตัวแปรนี้ เมื่อฉันเรียกservice servicename statusใช้/etc/init.d/servicenameไฟล์ที่มีเนื้อหาดังต่อไปนี้:
case "$1" in
status)
cd $VAR/dir
;;
esac
มันบอกว่า /dir: No such file or directory
แต่มันใช้งานได้ถ้าฉันวิ่ง/etc/init.d/servicename statusแทนservice servicename status
ฉันจะทำให้ยูนิกซ์เห็นตัวแปรสภาพแวดล้อมได้อย่างไร?
rcสคริปต์โดยตรงยังไม่ทำงานวิธีบนระบบปฏิบัติการ systemd ว่าเป็นสวดทุกสคริปต์ที่จะกลายเป็นสวดของsystemctlโดยเบ็ดที่ซ่อนอยู่