สมมติว่าฉันได้รวบรวมบางสิ่งบางอย่างและฉันเรียกใช้เช่น
$ /path/to/my/executable/mycmd
Hello World
ฉันต้องทำอะไรเพื่อเรียกใช้เช่นนี้
$ mycmd
Hello World
จากทุกที่ในคอมพิวเตอร์ของฉัน
สมมติว่าฉันได้รวบรวมบางสิ่งบางอย่างและฉันเรียกใช้เช่น
$ /path/to/my/executable/mycmd
Hello World
ฉันต้องทำอะไรเพื่อเรียกใช้เช่นนี้
$ mycmd
Hello World
จากทุกที่ในคอมพิวเตอร์ของฉัน
คำตอบ:
สิ่งที่คุณกำลังมองหาคือPATHตัวแปรด้านสิ่งแวดล้อม มันบอกเชลล์ซึ่งมันจำเป็นต้องค้นหาโปรแกรม คุณสามารถดูค่าปัจจุบันของตัวแปรนั้นโดยใช้echo:
echo "$PATH"
ทีนี้แนวทางที่ดีที่สุดถ้าคุณต้องการใช้โปรแกรมใหม่คือติดตั้งโดยใช้โปรแกรมการจัดการแพ็คเกจสำหรับการแจกจ่ายของคุณ แต่ในกรณีนี้ฉันถือว่าคุณกำลังจัดการกับโปรแกรมที่ไม่ได้จัดส่งโดยชุดซอฟต์แวร์ที่มีอยู่ สำหรับโปรแกรมดังกล่าวคุณมีสองตัวเลือก:
/usr/local/bin/และ/opt/bin/- โฟลเดอร์เหล่านั้นควรอยู่ในของคุณPATHแล้ว (ดูข้างในโฟลเดอร์เหล่านี้และหากมีไฟล์จำนวนมากอยู่ในนั้นแสดงว่าผิดที่จะวางโปรแกรมของคุณเองและคุณต้องดูโฟลเดอร์อื่น ๆ ที่อยู่ในรายการของคุณPATH)ปรับเปลี่ยนPATHตัวแปรของคุณ สิ่งนี้มีความปลอดภัยน้อยกว่าเนื่องจากกำหนดโฟลเดอร์เพิ่มเติมที่สามารถเก็บโปรแกรมไว้และบางคนอาจเล่นกลคุณได้โดยวางโปรแกรมของเขาไว้ที่นั่นเพื่อให้คุณเรียกใช้
คุณสามารถแก้ไขPATHตัวแปรได้ชั่วคราวโดยใช้
export PATH="$PATH:/path/to/your/executable"
(คำนึงถึง$PATH หลัง = ) หรือถาวรโดยเพิ่มบรรทัดด้านบนลงใน.bashrcไฟล์ของคุณ(สมมติว่าคุณใช้bash)