Periksa versi paket menggunakan apt-get / aptitude?

430

Sebelum saya menginstal paket saya ingin tahu versi apa yang akan saya dapatkan. Bagaimana cara memeriksa versi sebelum menginstal menggunakan apt-getatau aptitudepada debian atau ubuntu?

Jeff Schaller
sumber

Jawaban:

540

apt-get

Anda dapat menjalankan simulasi untuk melihat apa yang akan terjadi jika Anda meningkatkan / menginstal paket:

apt-get -s install <package>

Untuk melihat semua kemungkinan peningkatan, jalankan upgradedalam mode verbose dan (agar aman) dengan simulasi, tekan nuntuk membatalkan:

apt-get -V -s upgrade

apt-cache

Opsi ini policydapat menunjukkan versi yang diinstal dan versi jarak jauh (kandidat instalasi) dari suatu paket.

apt-cache policy <package>

apt-show-versi

Jika diinstal, tampilkan informasi versi tentang satu atau beberapa paket:

apt-show-versions <package>

Melewati -usakelar dengan atau tanpa nama paket hanya akan menampilkan paket yang dapat diupgrade.

bakat

GUI konsol aptitudedapat menampilkan paket yang dapat diupgrade dengan versi baru. Buka menu 'Paket Upgrade'. Menekan vpaket akan menampilkan informasi versi yang lebih rinci.

Atau di baris perintah:

aptitude versions <package>

Lulus -Vakan menampilkan informasi terperinci tentang versi, sekali lagi agar aman dengan sakelar simulasi:

aptitude -V -s install <package>

Pengganti install <package>dengan upgradeakan menunjukkan versi dari semua paket yang dapat diupgrade.

mengibaskan
sumber
9
"Program 'apt-show-versi' saat ini tidak diinstal. Anda dapat menginstalnya dengan mengetik .."
Peter Ehrlich
1
apt-get -V -s upgrademembuat hari saya, terima kasih!
dr.dimitru
Apakah disarankan untuk menjalankan apt-get install -sdengan sudo?
edwinksl
@edwinksl: Ini berfungsi dengan baik tanpa itu, jadi saya tidak berharap sudo akan lebih baik.
zondo
3
apt show <packages>juga dapat ditambahkan ke daftar
leo
59

Cara lain menggunakan dpkg dan grep :

dpkg -s <package> | grep Version
Alf
sumber
14
Ini tidak berfungsi ketika <paket> belum diinstal (yang merupakan persyaratan dalam pertanyaan).
Serrano
1
Serrano Pereira, jawaban itu telah membantu saya, yang memiliki pertanyaan yang sedikit berbeda, tetapi cukup mirip untuk tidak menipu pada stackoverflow.
Jose Alban
lebih baik: dpkg -s <paket> | Versi grep (Catat modal V)
langlauf.io
21

Opsi lain, jika Anda tidak tahu nama lengkap paket, adalah memformat output pencarian aptitude:

aptitude search <package> -F "%c %p %d %V"

%c= status (paket terpasang atau tidak)
%p= nama
%dpaket
%V= deskripsi paket = versi paket yang tersedia

Referensi: http://linux.die.net/man/8/aptitude

Diego Ponciano
sumber
8

Untuk mendapatkan nama paket:

apt-cache search *search term*

Untuk mendapatkan detail versi:

apt-cache show *packagename*

Saya percaya apt-getdan apt-cachesedang ditinggalkan, dengan aptdan aptitudemenjadi metode yang disukai. Mengingat umur panjang dari apt-suite, itu mungkin taruhan yang aman untuk beberapa waktu mendatang!

Ned Flanders
sumber
Itulah tepatnya yang saya cari. Menggunakan repo jarak jauh untuk mendapatkan versi dan semua info lainnya.
four43
6

Kamu bisa menulis apt show <package>

elvis.dukaj
sumber
Ini sudah tercakup dalam jawaban Ned Flanders, unix.stackexchange.com/a/362794/22812
Anthony Geoghegan
@Yurij Anda harus memasukkan jawaban Anda sendiri sesuai jumlah edit yang Anda buat
Kiwy
@AnthonyGeog. Kalau Anda salah, ia berbicara tentang apt-cachesaya menggunakan aptdua hal berbeda ... Apa yang saya lewatkan?
elvis.dukaj
aptdan apt-cachemelakukan hal yang sama. Jika Anda memeriksa kode sumber, keduanya sama-sama memiliki fungsi yang sama: untuk show, fungsi yang dipanggil ShowPackagedan untuk search, fungsi yang dipanggil DoSearch.
Anthony Geoghegan
3
 $ rmadison gdm3
 gdm3 | 2.30.5-6squeeze2 | squeeze-security | i386
 gdm3 | 2.30.5-6squeeze5 | squeeze          | i386
 gdm3 | 3.4.1-8          | wheezy           | i386
 gdm3 | 3.14.1-7         | jessie           | i386
 gdm3 | 3.18.0-2         | stretch          | i386
 gdm3 | 3.18.0-2         | sid              | i386

dari devscripts.deb

sbin_bash
sumber
Untuk ubuntu ini menunjukkan versi yang ditemukan untuk versi ubuntu yang berbeda (nama kode seperti "tepat", "dapat dipercaya" dan "xenial"). Sangat lambat, tetapi dapat membantu Anda dengan keputusan untuk meningkatkan LTS Anda;)
Tomasz Gandor
2

Untuk melihat paket terbaru yang tersedia sebelum menginstal. Lakukan pembaruan sehingga Anda memiliki semua pembaruan paket terbaru.

$sudo apt-get update

Sekarang, Untuk memeriksa paket terbaru yang tersedia di repositori Anda sebelum menginstal jalankan perintah di bawah ini.

$apt-cache show <package name>

Contoh:

$apt-cache show latexila

atau

$apt-cache show npm
Yanish Pradhananga
sumber