เพิ่มไดเร็กทอรีไปยังพาธใน Linux

Add Directory Path Linux



ทุกครั้งที่คุณเรียกใช้คำสั่งบนเทอร์มินัล Linux คุณกำลังสั่งให้เชลล์รันโปรแกรมปฏิบัติการที่มีชื่อที่กำหนด โปรแกรมปฏิบัติการ รวมถึงโปรแกรมอย่างง่าย เช่น ls, mkdir, touch และ find อยู่บนไดเร็กทอรีพิเศษบนระบบไฟล์ ใน Linux ไดเร็กทอรีที่รองรับโปรแกรมปฏิบัติการดังกล่าว ได้แก่:

/usr/sbin
/เป็น/usr/ท้องถิ่น/เป็น
/usr/ท้องถิ่น/เป็น
/เป็น
/usr/เป็น
/snap/เป็น
/sbin
/usr/เกม
/usr/ท้องถิ่น/เกม

ไฟล์ที่มีสิทธิ์ปฏิบัติการในหนึ่งในไดเร็กทอรีเหล่านั้นสามารถดำเนินการได้จากตำแหน่งใดก็ได้ภายในเทอร์มินัล Linux







ดังนั้น คำถามจึงเกิดขึ้น เชลล์ Linux รู้ได้อย่างไรว่าจะค้นหาโปรแกรมได้ที่ไหน? มันไม่ได้เริ่มการค้นหาจากไดเร็กทอรีปัจจุบันหรือที่ใดก็ได้แบบสุ่มในระบบไฟล์ เปลือกขึ้นอยู่กับ $PATH ตัวแปร.



ตัวแปร $PATH คืออะไร?

$PATH เป็นตัวแปรสภาพแวดล้อมที่บอกเชลล์ว่าจะหาตำแหน่งไฟล์เรียกทำงานได้ที่ไหน มีไดเร็กทอรีต่าง ๆ ที่กำหนดไว้ใน $PATH ตัวแปร. เพื่อแสดงไดเร็กทอรีใน your $PATH , รันคำสั่ง:



$โยนออก $PATH





ในการค้นหาไดเร็กทอรีที่มีคำสั่งที่เรียกใช้งานได้ ให้ใช้คำสั่ง ที่ คำสั่งดังนี้

$ที่ สั่งการ

ตัวอย่างเช่น เพื่อค้นหาตำแหน่งที่ปฏิบัติการได้สำหรับ pwd คำสั่งเรียกใช้คำสั่ง:



$ที่ pwd

จากผลลัพธ์ เราจะเห็นได้ว่าไฟล์ที่เรียกใช้งานได้นั้นอยู่ในไฟล์ /เป็น ไดเรกทอรี สำหรับ สัมผัส คำสั่งปฏิบัติการอยู่ใน /usr/bin ไดเรกทอรี

วิธีเพิ่มไดเร็กทอรีไปยัง $PATH

สมมติว่าคุณมีเชลล์สคริปต์อย่างง่ายที่เรียกว่า ทักทาย .sh ที่พิมพ์ สวัสดีชาวโลก วางไว้ใน / home/james/files ไดเรกทอรี โดยค่าเริ่มต้น ไดเร็กทอรียังไม่ได้กำหนดใน $PATH ตัวแปร. ในการรันสคริปต์จากตำแหน่งหรือไดเร็กทอรีใดๆ คุณต้องระบุพาธสัมบูรณ์ไปยังสคริปต์ ตอนนี้อาจยุ่งยากและใช้เวลานาน

ในการรันสคริปต์ทั่วโลก (โดยไม่คำนึงถึงตำแหน่งของคุณในระบบไฟล์) โดยไม่ระบุพาธแบบเต็มไปยังสคริปต์ คุณต้องเพิ่มไดเร็กทอรีที่มีสคริปต์ลงใน $PATH ตัวแปรโดยใช้ไวยากรณ์ด้านล่าง

$ส่งออก เส้นทาง=$PATH:/เส้นทาง/ถึง/ไดเรกทอรี/กับ/ไฟล์

ในกรณีนี้ คำสั่งจะเป็น:

$ส่งออก เส้นทาง=$PATH:/บ้าน/เจมส์/ไฟล์

ตอนนี้คุณควรอยู่ในฐานะที่จะเรียกหรือเรียกใช้สคริปต์จากไดเร็กทอรีใดๆ ภายในระบบ Linux ของคุณโดยไม่ต้องระบุพาธสัมบูรณ์ไปยังสคริปต์ดังที่แสดง

วิธีเพิ่มไดเร็กทอรีไปยังตัวแปร $PATH อย่างถาวร

เส้นทางที่เราเพิ่งกำหนดให้กับ $PATH เป็นเพียงชั่วคราวและจะไม่คงอยู่เมื่อคุณปิดเทอร์มินัลหรือรีบูตระบบของคุณ ใช้งานได้เฉพาะในเซสชันเชลล์ปัจจุบันเท่านั้น หากคุณออกและเปิดเซสชันอื่น คุณจะเจอข้อผิดพลาดดังที่แสดง

หากต้องการคงการเปลี่ยนแปลง ให้กำหนดตัวแปร $PATH ใน ~.bashrc ไฟล์การกำหนดค่า ในการทำให้สำเร็จ ให้เปิดไฟล์การกำหนดค่า

$sudo ฉันมา~/.bashrc

จากนั้นเพิ่มบรรทัดตามที่แสดง

$ส่งออก เส้นทาง=$PATH:/บ้าน/เจมส์/ไฟล์

หลังจากนั้นให้บันทึกและออก ในการโหลดการเปลี่ยนแปลงใหม่ ให้เรียกใช้คำสั่ง source ดังนี้:

$แหล่งที่มา~/.bashrc

ในการตรวจสอบการเพิ่มไดเร็กทอรีไปยัง $PATH ให้รันคำสั่งตามที่แสดง

$โยนออก $PATH

ห่อ

และที่นั่นคุณมีมัน! เราจัดการเพิ่มไดเร็กทอรีไปยัง $PATH บน Linux ได้สำเร็จ อย่างที่คุณเห็น มันค่อนข้างสะดวกและตรงไปตรงมา โดยเฉพาะอย่างยิ่งหากคุณจะเรียกใช้สคริปต์หรือแอปพลิเคชันจากเชลล์เป็นประจำ คำสั่งเดียวกันนี้จะใช้ได้กับทุกรสชาติของลินุกซ์