เป็นไปได้หรือไม่ที่จะบีบบังคับให้ bash โหลดไฟล์. profile โดยไม่ต้องออกจากระบบและกลับเข้ามาใหม่อีกครั้ง?
เป็นไปได้หรือไม่ที่จะบีบบังคับให้ bash โหลดไฟล์. profile โดยไม่ต้องออกจากระบบและกลับเข้ามาใหม่อีกครั้ง?
คำตอบ:
สิ่งนี้ควรใช้ได้กับเทอร์มินัลปัจจุบัน:
. ~/.profile
.
เป็นbash
builtin และคำพ้องความหมายสำหรับsource
ดูman bash
:
. ชื่อไฟล์ [ อาร์กิวเมนต์ ] ชื่อไฟล์
ต้นฉบับ[ อาร์กิวเมนต์ ] อ่านและดำเนินการคำสั่งจากชื่อไฟล์ในสภาพแวดล้อมเชลล์ปัจจุบัน (…)
~/.profile
การเปลี่ยนแปลงที่จะไม่ได้มีผลบังคับใช้หลังจากที่. ~/.profile
โหลด ตัวอย่างเช่นเพิ่มฟังก์ชั่นไปที่~/.profile
: function externalip () { curl http://ipecho.net/plain; echo; }
จากนั้น~/.profile
- IT WORKS ตอนนี้ลบฟังก์ชั่น~/.profile
นั้นจากนั้น. ~/.profile
อีกครั้ง ฟังก์ชั่นยังคงมีอยู่ - การรีสตาร์ทเท่านั้น (ออกจากระบบ & ใน) จะลบออก
หากคุณไม่ต้องการเริ่มเชลล์ใหม่ แต่ใช้งานสคริปต์ในเชลล์ปัจจุบันคุณต้องหาแหล่ง:
source script_name.sh
source
= .
Bash source
ในตัวเป็นคำพ้องสำหรับคำสั่ง Bourne shell .
(dot)