ฉันเพิ่งทำสิ่งนี้ในวันนี้ดูเหมือนว่าเอกสารที่ชัดเจนนั้นหายากสำหรับผู้ที่ต้องการควบคุมสิ่งที่ติดตั้งไว้และที่ไหน
หากว่าคุณเรียกใช้ pip3 ติดตั้งอะไรก็จะมีค่าเริ่มต้นที่จะวางสิ่งต่างๆภายใต้ ~ / .local ตามที่คุณรู้ มันเป็นธรรมเนียมใน Unix เพื่อแบ่งประเภทไฟล์ให้ใส่ "runable" ภายใต้ ~ / .local / bin
ในเทอร์มินัลพิมพ์สิ่งนี้เพื่อดูเส้นทางของคุณทันที:
$ echo $PATH
ตรวจสอบว่าคุณมีสิ่งหลามที่ติดตั้งใน ~ / .local
$ ls -la ~/.local/bin
นั่นเป็นการยืนยันว่าไฟล์เรียกทำงานอยู่ที่นั่นหรือทำเพื่อฉัน หากสิทธิ์ของไฟล์เหล่านั้นแสดง "x" พวกเขาจะสามารถใช้งานได้
ตอนนี้เพิ่มไดเรกทอรีนั้นลงในพา ธ ภายในเทอร์มินัล
$ export PATH=~/.local/bin:$PATH
ตรวจสอบเส้นทางของคุณอีกครั้งเพื่อดูการเปลี่ยนแปลง โปรดจำไว้ว่าเป็นการตั้งค่าชั่วคราวสำหรับเซสชันเทอร์มินัลนั้นเท่านั้น มันไม่ได้ใช้กับอาคารอื่น ๆ ในเวลาเดียวกันหรือในอนาคต มันเป็นสถานที่ที่ดีในการทดสอบสิ่งต่าง ๆ
หลังจากนั้นทุกโปรแกรมที่ทำงานได้ภายใน ~ / .local / bin ควรรันถ้าคุณพิมพ์ชื่อในบรรทัดคำสั่ง ไม่จำเป็นต้องเรียกใช้ "~ / .local / bin / jupyter" เพียงพิมพ์ "jupyter" ไม่จำเป็นสำหรับ "./" ที่คุณเห็นบางครั้งนั่นคือเมื่อคุณเปิดโปรแกรมจากไดเรกทอรีการทำงานที่ไม่ได้อยู่ในเส้นทาง
หากคุณตัดสินใจในภายหลังว่าคุณต้องการที่จะให้ถาวรเพื่อให้ ~ / .local / bin อยู่ใน PATH ของคุณเสมอคุณสามารถทำได้โดยแก้ไขไฟล์กำหนดค่าสภาพแวดล้อมบางอย่าง ตัวอย่างเช่นขึ้นอยู่กับการตั้งค่าของคุณตัวอย่างเช่นในไฟล์ ".bashrc" ในโฮมโฟลเดอร์ของฉันบรรทัดสุดท้ายคือ "export PATH = $ PATH: $ HOME / bin" ดังนั้นฉันสามารถวาง $ HOME / local / bin ไว้ข้างหน้า หมายเหตุฉันเขียน $ HOME ไม่ใช่ "~" ในนั้น จากนั้นทุกครั้งที่ฉันใช้ BASH เชลล์จะมีการแก้ไข PATH หากคุณอาจใช้เชลล์อื่นฉันคิดว่าสิ่งที่ถูกต้องคือการแก้ไข ~ / .profile แทน ฉันคิดว่าเชลล์ทั้งหมดใน Ubuntu จะเป็นแหล่งไฟล์นั้น
ในกรณีของฉันฉันติดตั้งหลายโปรแกรมด้วย pip3 เช่น jupyter วิธีหนึ่งในการตรวจสอบว่าติดตั้งลงในที่ใดก็คือให้ทำงาน
$ pip3 list
แสดงแพ็คเกจทั้งหมดที่มีอยู่ไม่ใช่เฉพาะแพ็คเกจที่ติดตั้งโดย pip3
$ pip3 show jupyter
ในกรณีของฉันเช่น:
---
Metadata-Version: 2.0
Name: jupyter
Version: 1.0.0
Summary: Jupyter metapackage. Install all the Jupyter components in one go.
Home-page: http://jupyter.org
Author: Jupyter Development Team
Author-email: jupyter@googlegroups.org
Installer: pip
License: BSD
Location: /home/pauljohn/.local/lib/python3.5/site-packages
Requires: nbconvert, ipykernel, ipywidgets, notebook, jupyter-console, qtconsole
Classifiers:
Intended Audience :: Developers
Intended Audience :: System Administrators
Intended Audience :: Science/Research
License :: OSI Approved :: BSD License
Programming Language :: Python
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.3
Programming Language :: Python :: 3.4
ฉันไม่ต้องการให้มันฟังดูเหมือนเปลวไฟ แต่มันอาจดูเหมือนเป็นการโจมตี ฉันขอเตือนคุณว่าอย่าทำตามคำแนะนำอย่างกระตือรือร้นที่บางคนจะเสนอให้เรียกใช้ "sudo pip3 xxx" โดยทั่วไปคุณควรรันการติดตั้งรูทด้วยแพ็คเกจ Debian เท่านั้นไม่ใช่กับ pip3 หากคุณทำงานโดยไม่ใช้ sudo คุณจะได้รับอันตรายจากบัญชีผู้ใช้ หากคุณทำผิดขณะที่เรียกใช้สคริปต์ในฐานะรูทคุณอาจกระจายไฟล์รอบ ๆ ฮาร์ดดิสก์ของคุณและเสียใจได้ โดยเฉพาะอย่างยิ่งหากคนอื่น ๆ ลงชื่อเข้าใช้และใช้คอมพิวเตอร์เครื่องนั้นหลีกเลี่ยงการทำสิ่งใด ๆ ในฐานะรูทเว้นแต่คุณจะมั่นใจ
นอกจากนี้ยังควรสังเกตว่า pip3 มีค่าเริ่มต้นที่จะติดตั้งลงใน ~ / .local แต่ไม่จำเป็น อ่าน "man pip3" ค้นหา "-t" (--target) คุณสามารถระบุไดเรกทอรีการติดตั้ง ฉันคิดว่ามันดีเพราะคุณสามารถจำกัดความเสียหายของไดเรกทอรีอื่นและลบทิ้งเมื่อใดก็ตามที่คุณต้องการ ~ / .local อาจมีสิ่งที่มีค่าอื่น ๆ ติดตั้งอยู่โดยโปรแกรมอื่นและคุณจะไม่ลบล้างพวกเขา ฉันคิดว่า ~ / .local เป็นสถานที่สำหรับการตั้งค่ามากกว่าโปรแกรมต่อไป