ฉันได้ติดตั้งแพคเกจบางอย่างสำเร็จโดยใช้บรรทัดคำสั่ง 'sudo apt-get install ... ' เมื่อฉันรู้ล่วงหน้าว่ามีแพ็คเกจเหล่านั้น แต่ฉันจะค้นหาหรือรับรายการสิ่งที่มีอยู่ในที่เก็บได้อย่างไร
ฉันได้ติดตั้งแพคเกจบางอย่างสำเร็จโดยใช้บรรทัดคำสั่ง 'sudo apt-get install ... ' เมื่อฉันรู้ล่วงหน้าว่ามีแพ็คเกจเหล่านั้น แต่ฉันจะค้นหาหรือรับรายการสิ่งที่มีอยู่ในที่เก็บได้อย่างไร
คำตอบ:
จากบรรทัดคำสั่งให้ใช้:
apt-cache search keyword
โดยที่คีย์เวิร์ดการค้นหาอาจเป็นชื่อแพ็กเกจทั้งหมดหรือบางส่วนหรือคำใด ๆ ที่ใช้ในคำอธิบาย
ตัวอย่างเช่นapt-cache search proxy
มีทั้งแพ็คเกจเหล่านี้:
Tiny proxy - ตัวเลือก HTTP ที่มีน้ำหนักเบาและไม่แคช tircd - ircd proxyไปที่ twitter API
หมายเหตุ: รายการอาจจะยาวเพื่อให้คุณสามารถท่อส่งออกเพื่อที่จะให้มันเลื่อนบรรทัดเดียวหรือหน้าจอในเวลาหนึ่งคือ
less
apt-cache search something | less
apt-cache search .
Synapticมักจะเป็นวิธีที่สะดวกกว่าในการทำเช่นนี้ แต่อย่างน้อยต้องมีเซิร์ฟเวอร์ X ที่ปลายของคุณ (เว้นแต่คุณจะใช้สภาพแวดล้อมเดสก์ทอป) ติดตั้งด้วยsudo apt-get install synaptic
หากจำเป็น
Synaptic บนเซิร์ฟเวอร์ ssh'd ผ่าน X forwarding:
Synaptic ทำงานแบบโลคัลบน Ubuntu Desktop:
apt-get
คุณสามารถเรียกใช้apt-cache
โดยไม่มีข้อโต้แย้งใด ๆ และรับข้อมูลช่วยเหลือ / cheatsheet สั้น ๆ คุณสามารถอ่าน manpages บนมันเพื่อขอความช่วยเหลือได้อีกต่อไป (เช่นman apt-cache
)
apt install
ได้มีวิธีที่ฉลาดในการทำเช่นนั้นหรือไม่? ผลลัพธ์จากฟังก์ชั่นนี้ยุ่ง สามารถใช้คำแรกจากแต่ละบรรทัดได้ แต่ควรมีวิธีที่ง่ายกว่า
apt-cache pkgnames
การใช้aptitude
, apt-cache
และapt
รูปแบบเอาต์พุตทั้งหมดแตกต่างกัน (สิ่งเหล่านี้ไม่จำเป็นต้องใช้sudo
เมื่อค้นหาแพ็คเกจ) ฉันชอบที่จะใช้apt
สำหรับการอ่านแพคเกจ มันเน้นชื่อแพคเกจและทำให้ช่องว่างระหว่างแพคเกจที่แตกต่างกัน นอกจากนี้ยังมี[installed]
รายชื่อติดกับแต่ละแพ็คเกจที่ติดตั้งไว้แล้ว การใช้งาน:
apt search package-name
apt search firefox | grep -A 3 firefox
apt search ^firefox
หรือapt search ^firefox$
คุณยังสามารถใช้ความถนัดจากบรรทัดคำสั่ง:
aptitude search xxxxxx
apt-cache
ฉันฉันมักจะทำเช่นนั้นapt-get install aptitude
ในแต่ละกล่องใหม่ที่ฉันติดตั้ง อย่างไรก็ตามเนื่องจากฉันไม่สามารถหาวิธีที่apt-cache
จะแสดงให้ฉันเห็นว่ามีการติดตั้งหรือไม่ฉันคิดว่าฉันจะต้องทำเช่นนั้นต่อไปอีกสักพัก :-)
dpkg --list | grep "$1"
) หรือเพิ่มฟังก์ชันเชลล์เพื่อให้เอฟเฟกต์นี้เป็นของคุณ.bash_login
... :-)
เครื่องมือบรรทัดคำสั่ง apt-cache ใช้สำหรับค้นหาแคชแพ็คเกจซอฟต์แวร์ apt เครื่องมือนี้ใช้สำหรับค้นหาแพคเกจซอฟต์แวร์รวบรวมข้อมูลของแพ็คเกจและใช้เพื่อค้นหาว่าแพ็คเกจใดที่พร้อมใช้งานสำหรับการติดตั้งบนระบบที่ใช้ Debian หรือ Ubuntu
หากต้องการค้นหาชื่อแพ็กเกจพร้อมกับคำอธิบายก่อนทำการติดตั้งให้ใช้แฟล็ก 'ค้นหา' การใช้“ ค้นหา” กับ apt-cache จะแสดงรายการของแพ็คเกจที่ตรงกันพร้อมคำอธิบายสั้น ๆ สมมติว่าคุณต้องการค้นหาคำอธิบายของแพ็คเกจ 'vsftpd' จากนั้นคำสั่งจะเป็น
ไวยากรณ์:
apt-cache search SearchTerm
$ apt-cache search vsftpd
ผลลัพธ์ที่เป็นไปได้คือ:
vsftpd - lightweight, efficient FTP server written for security
ccze - A robust, modular log coloriser
ftpd - File Transfer Protocol (FTP) server
yasat - simple stupid audit tool
ในการค้นหาและแสดงรายการแพ็คเกจทั้งหมดที่เริ่มต้นด้วย 'vsftpd' คุณสามารถใช้คำสั่งต่อไปนี้
$ apt-cache pkgnames vsftpd
คุณอาจต้องการเรียกใช้ผลลัพธ์ผ่านมากกว่าหรือแม้แต่ grep ตัวอย่างเช่น
apt-cache search firefox | grep plugin
อันดับแรกฉันขอแนะนำให้คุณอัปเดตไฟล์ดัชนีแพ็คเกจเพื่อให้รายการของไฟล์ทั้งหมดในที่เก็บที่คุณกำลังจะสร้างเป็นข้อมูลล่าสุด
sudo apt-get update
จากนั้นใช้ฟังก์ชัน" search regex" apt-cache
โดยที่ "regex" หมายถึง Regular Expression และเป็นรูปแบบที่กำหนดให้ค้นหา สำหรับข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบการค้นหาที่คุณสามารถดูคู่มือ regex (7) โดยคำสั่งman 7 regex
หรือในภาษาอังกฤษ regex ตัวแปรเท่ากับ จะพอเพียง
apt-cache search .
ข้างต้นจะให้ผลลัพธ์ทั้งหมด แต่ไม่ได้อยู่ในลำดับที่เป็นประโยชน์อย่างยิ่งสำหรับการเรียกดู
ดังนั้นในที่สุดเราสามารถจัดเรียงตามคำสั่งโดยใช้พจนานุกรมและแสดงเพียงหน้าในเวลาใช้sort -d
less
apt-cache search . |sort -d |less
apt-cache policy
ด้วยเช่นกันจะให้ข้อมูลเพิ่มเติมเกี่ยวกับแหล่งที่มา