ฉันจะทราบได้อย่างไรว่ามีบางสิ่งที่อยู่ในแพคเกจโดยไม่ต้องหันไปใช้ Google


29

ฉันมักจะพบว่าตัวเองต้องการที่จะติดตั้งบางสิ่งบางอย่าง แต่ฉันไม่แน่ใจในสิ่งที่มันเป็นแพคเกจนี่เป็นเหตุการณ์ที่เกิดขึ้นบ่อยมากสำหรับฉัน:

$ make html
sphinx-build -b djangohtml -d _build/doctrees   . _build/html
make: sphinx-build: Command not found
make: *** [html] Error 127

$ sudo apt-get install sphinx
E: Unable to locate package sphinx

$ sudo apt-get install sphinx-build
E: Unable to locate package sphinx-build

Googles

$ sudo apt-get install python-sphinx

มีวิธีที่ดีกว่า?

คำตอบ:


31

ติดตั้งไฟล์ aptและเรียกใช้apt-file update

จากนั้นใช้apt-file search sphinx-buildเพื่อค้นหาแพ็คเกจที่รวมไฟล์ที่ชื่อsphinx-build


ทำได้ดีนี่! ฉันมักจะ resorted เพื่อpackages.ubuntu.comแต่แอปบรรทัดคำสั่งที่ดีที่สุดเสมอ: D
Egil

15

อูบุนตูค่อนข้างฉลาด เพียงลองใช้งาน

$ sphinx-build

The program 'sphinx-build' is currently not installed.  You can install it by typing:
sudo apt-get install python-sphinx

2
ไม่มีใครรู้แน่ชัดว่า "ความฉลาด" นี้ถูกนำไปใช้ใน Ubuntu ได้อย่างไร? เช่นแพคเกจใดให้บริการนี้
entropo

5
@entropo: แพ็คเกจที่มีฟังก์ชันนี้คือ "ไม่พบคำสั่ง"
Tweek

3
ควรใช้อย่างระมัดระวังเป็นคำสั่งที่ไม่ทำงานจากสคริปต์หรือ makefile อาจทำงานถ้าเรียกจากเชลล์ของคุณ (เช่นเนื่องจากสคริปต์ใช้ $ PATH อื่นหรือคุณมีนามแฝงที่มีชื่อเดียวกันในเชลล์ของคุณ) และ อาจมีผลกระทบที่ไม่พึงประสงค์
Florian Diesch

3

ฉันไม่รู้ว่า apt-get สามารถทำได้หรือไม่ แต่ฉันชอบใช้ความถนัด

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

ตัวอย่าง:

sudo aptitude search sphinx
p   gstreamer0.10-pocketsphinx      - lightweight speech recognition - GStreamer
p   libpocketsphinx-dev             - lightweight speech recognition - developme
p   libpocketsphinx1                - lightweight speech recognition - library  
p   libsphinx-search-perl           - Perl module for Sphinx search engine      
p   libsphinx2-dev                  - speech recognition library - development k
p   libsphinx2g0                    - speech recognition library                
p   libsphinxbase-dev               - Sphinx base libraries - development files 
p   libsphinxbase1                  - Sphinx base libraries                     
p   pocketsphinx-hmm-tidigits       - lightweight speech recognition - TIDIGITS 
p   pocketsphinx-hmm-wsj1           - lightweight speech recognition - WSJ1 acou
p   pocketsphinx-lm-wsj             - lightweight speech recognition - WSJ langu
p   pocketsphinx-utils              - lightweight speech recognition - command-l
p   python-pocketsphinx             - lightweight speech recognition - Python mo
p   python-pocketsphinx-dbg         - lightweight speech recognition - Python mo
p   python-repoze.sphinx.autointerf - Sphinx extension that auto-generates API d
p   python-sphinx                   - tool for producing documentation for Pytho
p   python-sphinxbase               - Sphinx base libraries - Python module     
p   python-sphinxbase-dbg           - Sphinx base libraries - Python module (deb
v   python2.6-pocketsphinx          -                                           
v   python2.6-pocketsphinx-dbg      -                                           
v   python2.6-sphinxbase            -                                           
v   python2.6-sphinxbase-dbg        -                                           
v   python2.7-pocketsphinx          -                                           
v   python2.7-pocketsphinx-dbg      -                                           
v   python2.7-sphinxbase            -                                           
v   python2.7-sphinxbase-dbg        -                                           
p   sphinx2-bin                     - speech recognition utilities              
p   sphinx2-hmm-6k                  - speech recognition library - default acous
p   sphinxbase-utils                - Sphinx base libraries - utilities         
p   sphinxsearch                    - Fast standalone full-text SQL search engine

สิ่งนี้ช่วยได้บ้าง แต่หลังจากนั้นคุณจะต้องเรียกใช้บางอย่างเช่น 'dpkg -L packagename | grep bin 'เพื่อค้นหาว่าคำสั่งใดมีแพ็คเกจให้
ธ นาถ

3

ฉันชอบใช้http://packages.ubuntu.com/ - มี "ค้นหาเนื้อหาของแพ็คเกจ" ข้างใน Debian ยังมีอินเตอร์เฟซที่ใกล้เคียงที่http://packages.debian.org

นี่เป็นข้อดีที่คุณสามารถใช้งานได้โดยไม่ต้องมีการเข้าถึง CLI ของ Ubuntu เองและอธิบายสิ่งต่างๆผ่านทางโทรศัพท์


2

คุณสามารถใช้กลุ่มคำสั่ง apt หรือ aptitude ซึ่งฉันแนะนำข้างต้น apt นี่คือรายการที่จะค้นหา

APT

ในการค้นหาสิ่งที่คล้ายกับคำสั่งที่คุณต้องการ apt-cache search Xตัวอย่างเช่นapt-cache search cheeseจะให้ทุกสิ่งที่เกี่ยวข้องกับชีส เพื่อแสดงให้เห็นว่าการพึ่งพาและสิ่งที่มันมีคุณจะทำอย่างไร
ของหลักสูตรการติดตั้งจะเป็น apt-cache show cheese
apt-get install cheese

ความถนัด

ในการค้นหา: aptitude search cheeseซึ่งจะแสดงรายการ nicer มากกว่า apt
ถึงแสดง: aptitude show cheeseซึ่งจะแสดงรายการ nicer และ friendlier เพิ่มเติมอีกครั้ง
เพื่อติดตั้ง: aptitude install cheeseเพื่อติดตั้ง อีกครั้งดีกว่า

ความถนัดยังช่วยให้ข้อมูลที่เกี่ยวข้องกับสิ่งที่คุณกำลังมองหาเช่น

apt-cache search phiVS aptitude search phi
apt-cache search sphiVSaptitude search sphi

หากคุณต้องการรุ่นแบบ GUI ฉันขอแนะนำให้Synaptic Package ผู้จัดการหรือง่ายCenter Software ใน Synaptic คุณสามารถมองหาสิ่งที่คล้ายกับสิ่งที่คุณกำลังมองหาและมันจะแสดงให้คุณเห็น


0

อัตโนมัติฉลาด

auto-aptเป็นแพ็คเกจที่มีประโยชน์มากมายโดยเฉพาะกับ Makefiles และconfigureสคริปต์ที่อ้างอิงสิ่งที่คุณอาจไม่มีและไม่รู้ว่าจะหาที่ไหนซึ่งมักจะยุ่งยากกับไฟล์ส่วนหัว คุณเรียกใช้makeในกรณีนี้และพยายามเรียกใช้sphinx-buildแต่ล้มเหลวเมื่อหาไม่พบ

auto-apt run [...]จะเรียกใช้คำสั่งที่ระบุจากนั้นจะแนะนำคุณตลอดการติดตั้งแพ็กเกจที่มีไฟล์ที่หายไปซึ่งapt-getสามารถรู้และค้นหาได้

ดังนั้นเพียงแค่เรียกใช้auto-apt run make htmlและดูว่าเกิดอะไรขึ้น :)

สำหรับข้อมูลเพิ่มเติมโปรดดูเอกสารประกอบสำหรับการรับรู้อัตโนมัติ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.