Bagaimana cara mencari paket yang tersedia dari baris perintah?

584

Saya telah berhasil menginstal beberapa paket menggunakan baris perintah 'sudo apt-get install ...' ketika saya tahu sebelumnya bahwa paket-paket itu tersedia. Tetapi bagaimana saya bisa mencari atau mendapatkan daftar apa yang tersedia di repositori?

Mark Thomas
sumber

Jawaban:

728

Untuk mencari paket tertentu dengan nama atau deskripsi:

Dari baris perintah, gunakan:

apt-cache search keyword

di mana kata kunci pencarian dapat menjadi semua atau bagian dari nama paket atau kata apa pun yang digunakan dalam deskripsinya.

Misalnya, apt-cache search proxysertakan kedua paket ini:

proxy kecil - Proxy HTTP ringan, tanpa caching, opsional menganonimkan
tircd - ircd proksi ke API twitter

Catatan: daftar mungkin panjang, sehingga Anda dapat menyalurkan output lessuntuk membuatnya dapat digulirkan satu baris atau satu layar pada satu waktu, yaitu apt-cache search something | less.

Untuk mendapatkan daftar semua paket

apt-cache search .

Gunakan Synaptic jika Anda memiliki penerusan X diaktifkan atau ada di desktop

Synaptic seringkali merupakan cara yang lebih mudah untuk melakukan ini, tetapi membutuhkan setidaknya X server di pihak Anda (kecuali Anda menjalankan lingkungan desktop). Instal dengan sudo apt-get install synapticjika perlu.

  • Synaptic pada ssh'd server melalui penerusan X:

    masukkan deskripsi gambar di sini

  • Synaptic berjalan secara lokal di Desktop Ubuntu:

    masukkan deskripsi gambar di sini

ish
sumber
@MarkThomas Coba apt-cache policyjuga, ini memberi Anda lebih banyak informasi tentang sumber.
yclian
seperti apt-get, Anda bisa menjalankan apt-cachetanpa argumen dan mendapatkan info bantuan / cheatsheet singkat. Anda selalu dapat membaca halaman manual di atasnya untuk bantuan yang lebih lama. (yaitu man apt-cache)
pd12
Andaikata saya cukup bodoh untuk ingin menjalani hasilnya apt install, apakah ada cara cerdas untuk melakukannya? Output dari fungsi ini berantakan. Seseorang dapat menggunakan kata pertama dari setiap baris, tetapi harus ada cara yang lebih mudah.
Menghapus
Anda juga dapat mencari secara online. packages.ubuntu.com
activedecay
Jika Anda hanya perlu nama-nama semua paket yang tersedia lakukan sajaapt-cache pkgnames
flaz14
42

Menggunakan aptitude,, apt-cachedan aptsemua memformat output secara berbeda. (Tidak ada yang membutuhkan penggunaan sudosaat mencari paket.) Saya lebih suka menggunakan aptuntuk keterbacaannya. Ini menyoroti nama paket dan memberi jarak di antara paket-paket yang berbeda. Itu juga telah [installed]terdaftar di sebelah setiap paket yang sudah diinstal. Pemakaian:

apt search package-name
jbrock
sumber
2
jika saya menjalankan katakan '$ apt search firefox' itu menghasilkan banyak hasil keluaran :(
user3804598
Anda dapat mempersempit pencarian Anda dengan sesuatu seperti:apt search firefox | grep -A 3 firefox
jbrock
1
Pilihan lain untuk mempersempit pencarian: apt search ^firefoxatauapt search ^firefox$
jbrock
25

Anda juga dapat menggunakan aptitude dari baris perintah:

aptitude search xxxxxx
lxx
sumber
2
Yang mengganggu tentang ini adalah bahwa Ubuntu tampaknya tidak memberikannya kepada Anda secara default. Sampai saya tahu apt-cache, saya selalu melakukannya apt-get install aptitudedi setiap kotak baru yang saya instal. Namun, karena saya tidak dapat menemukan cara untuk apt-cachemenunjukkan kepada saya apakah itu diinstal, saya kira saya harus tetap melakukan itu sedikit :-)
2
@paxdiablo Cukup buat dua skrip shell baris (kira-kira seperti baris kedua dpkg --list | grep "$1") atau tambahkan fungsi shell ke efek ini ke .bash_login... :-)
FooF
5

Alat baris perintah apt-cache digunakan untuk mencari cache paket perangkat lunak apt. Dengan kata sederhana, alat ini digunakan untuk mencari paket perangkat lunak, mengumpulkan informasi paket dan juga digunakan untuk mencari paket apa yang tersedia untuk instalasi pada sistem berbasis Debian atau Ubuntu.

Untuk mengetahui nama paket dan dengan deskripsi sebelum menginstal, gunakan bendera 'cari'. Menggunakan "pencarian" dengan apt-cache akan menampilkan daftar paket yang cocok dengan deskripsi singkat. Katakanlah Anda ingin mengetahui deskripsi paket 'vsftpd', maka perintahnya adalah.

Sintaksis:

apt-cache search SearchTerm
$ apt-cache search vsftpd

Output yang mungkin adalah:

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

Untuk menemukan dan mendaftar semua paket yang dimulai dengan 'vsftpd', Anda dapat menggunakan perintah berikut.

$ apt-cache pkgnames vsftpd

Anda mungkin juga ingin menjalankan hasil melalui lebih, atau bahkan grep. Misalnya:

apt-cache search firefox | grep plugin
Tukar
sumber
3

Dengan asumsi Anda ingin melakukan semua ini dari terminal gunakan yang berikut ini:

pertama saya sarankan Anda memperbarui file indeks paket sehingga daftar semua file di repositori yang akan Anda buat adalah yang terbaru

sudo apt-get update

lalu gunakan fungsi " search regex" di apt-cachemana "regex" adalah singkatan dari Regular Expression dan merupakan pola yang diberikan untuk pencarian. Untuk info lebih lanjut tentang pola pencarian Anda dapat mencari regex manual (7) dengan perintah man 7 regexatau dalam bahasa Inggris . Sebuah regex variabel sama dengan . akan cukup.

apt-cache search .

Di atas akan memberi Anda SEMUA hasil tetapi tidak dalam urutan yang sangat membantu untuk browsing.

Jadi akhirnya kita bisa mengurutkan berdasarkan urutan kamus menggunakan sort -ddan hanya menampilkan halaman pada satu waktu menggunakan less.

apt-cache search . |sort -d |less
saudara laki-laki
sumber