เป็นไปได้หรือไม่ที่จะบีบบังคับให้ bash โหลดไฟล์. profile โดยไม่ต้องออกจากระบบและกลับเข้ามาใหม่อีกครั้ง?
เป็นไปได้หรือไม่ที่จะบีบบังคับให้ bash โหลดไฟล์. profile โดยไม่ต้องออกจากระบบและกลับเข้ามาใหม่อีกครั้ง?
คำตอบ:
สิ่งนี้ควรใช้ได้กับเทอร์มินัลปัจจุบัน:
. ~/.profile
.เป็นbashbuiltin และคำพ้องความหมายสำหรับ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)