Apa perbedaan antara apt dan apt-get?

458

Saya membaca tentang bilah kemajuan mewah baru yang ditambahkan ke apt1.0 di Softpedia dan cara mengaktifkannya di sini . Namun saat berlari sudo apt-get update, saya tidak melihat progress bar yang mewah. Saat membaca tautan kedua lagi, solusinya secara eksplisit mengharuskan Anda untuk menggunakannya sudo apt update.

Karena itu pertanyaan saya adalah perbedaan antara aptdan apt-get. Saya pikir mereka satu dan sama.

nik90
sumber
1
AFAIK mereka hanya tersedia di Trusty. Inilah cara mengaktifkannya: askubuntu.com/questions/445245/…
Seth
8
mengingat bahwa komentar @Seth hampir 2 tahun, saya pikir saya akan menambahkan sekarang bahwa itu tersedia, diinstal dan dapat digunakan di luar kotak. Tidak ada yang diperlukan untuk mengaktifkannya, gunakan saja aptalih-alih apt-get(Saya ada di 15.10)
Madivad

Jawaban:

400

Mereka adalah alat baris perintah yang sangat mirip yang tersedia di Trusty. apt-getdan apt-cacheperintah yang paling umum digunakan tersedia di apt.

apt-getdapat dianggap sebagai level bawah dan "back-end", dan mendukung alat berbasis APT lainnya. apt dirancang untuk pengguna akhir (manusia) dan outputnya dapat diubah antar versi.

Catatan dari apt (8):

The `apt` command is meant to be pleasant for end users and does not need
       to be backward compatible like apt-get(8).

Lihatlah posting ini untuk informasi lebih lanjut tentang alat baru:

Sinopsis tautan di atas (dengan koreksi * ):

Berita besar untuk versi ini adalah kami menyertakan biner "apt" baru yang menggabungkan perintah yang paling umum digunakan dari apt-get dan apt-cache. Perintahnya sama dengan rekan apt-get / apt-cache tetapi dengan opsi konfigurasi yang sedikit berbeda.

Saat ini apt binary mendukung perintah berikut:

  • daftar : yang mirip dpkg listdan dapat digunakan dengan flag seperti --installedatau --upgradable.
  • cari : berfungsi sama seperti apt-cache searchtetapi disortir berdasarkan abjad.
  • perlihatkan : bekerja seperti apt-cache showtetapi menyembunyikan beberapa detail yang orang cenderung tidak peduli (seperti hash). Rekor lengkap masih tersedia melalui apt-cache showtentu saja.
  • pembaruan : sama seperti biasa apt-get updatedengan keluaran warna diaktifkan.
  • instal, hapus : menambahkan output kemajuan selama menjalankan dpkg.
  • upgrade : sama dengan apt-get upgrade --with-new-pkgs. *
  • upgrade penuh : nama yang lebih bermakna untuk dist-upgrade.
  • sunting-sumber : sunting sources.listmenggunakan $EDITOR.
  • kebijakan : berfungsi sepertiapt-cache policy

Anda dapat mengaktifkan / menonaktifkan progress install [bar] melalui:

# echo 'Dpkg::Progress-Fancy "1";' > /etc/apt/apt.conf.d/99progressbar
Mario Limonciello
sumber
3
Hanya ingin tahu - bukankah upgrade yang tepat setara dengan 'upgrade --with-new-pkgs' (bukannya upgrade-upgrade yang IIRC lakukan secara default dan juga menghapus)?
zeratul021
Anehnya apt upgradememberi saya kesalahan di mana apt-get upgradehanya mencetak peringatan ketika PPA tidak memiliki file Rilis.
Tor Klingberg
1
Posting blog itu keliru untuk dikatakan apt upgradeseperti apt-get dist-upgrade --with-new-pkgs. dist-upgradedapat menginstal paket baru dan dapat menghapusnya . Selain UI, apt upgradeadalah apt-get upgrade --with-new-pkgs. Lihat jawaban JungleMartin dan apt (8) pada upgrade: "Paket baru akan diinstal jika diperlukan untuk memenuhi dependensi, tetapi paket yang ada tidak akan pernah dihapus."
Eliah Kagan
3
Mungkin perlu disebutkan bahwa mulai dari 16.04 secara default apt tidak menyimpan paket yang diunduh sementara apt-get tidak.
doug
69

Saat saya menulis ini, yang apthalaman manual (saya apt versi paket: 1.0.1ubuntu2.8) meliputi bagian berikut:

DIFFERENCES TO APT-GET(8)
   The apt command is meant to be pleasant for end users and does not need
   to be backward compatible like apt-get(8). Therefore some options are
   different:

   ·   The option DPkg::Progress-Fancy is enabled.
   ·   The option APT::Color is enabled.
   ·   A new list command is available similar to dpkg --list.
   ·   The option upgrade has --with-new-pkgs enabled by default.
JungleMartin
sumber
2
Ini adalah jawaban yang benar (untuk Debian dan Ubuntu serta turunan lainnya seperti Mint). Secara khusus, menjalankan sudo apt upgradeakan melakukan operasi yang sama dengan sudo apt-get upgrade --with-new-pkgs. Ini akan menginstal paket baru tetapi, tidak seperti sudo apt-get dist-upgrade , itu tidak akan menghapus yang lama (kecuali ketika menginstal versi baru dari paket yang sama , tentu saja - yang sudo apt-get upgradejuga akan dilakukan). man aptlebih lanjut menguatkan bahwa jawaban ini benar.
Eliah Kagan
Saya mengembalikan rollback suntingan saya karena a) format Anda memerlukan pengguliran yang tidak perlu, dan b) teks yang Anda salin salah, pilihannya tidak DPkgPM::..., tetapi DPkg::.., seperti yang ditunjukkan halaman manual online.
muru
2
poin bonus untuk RTFM
Thufir
Opsi "centang" tidak berfungsi dengan apt. Saya harus menggunakan "apt-get check". Mengapa?
Juan
22

Ada berbagai alat yang berinteraksi dengan Advanced Packaging Tool (APT) dan memungkinkan Anda untuk menginstal, menghapus dan mengelola paket dalam distribusi Linux berbasis Debian . apt-getadalah salah satu alat baris perintah seperti itu yang sangat populer. Alat lain yang populer adalah Aptitude dengan kedua pilihan GUI dan baris perintah.

Jika Anda telah menggunakan apt-getperintah, Anda mungkin menemukan sejumlah perintah serupa seperti apt-cache, apt-configdll. Dan di sinilah masalahnya muncul.

Anda lihat, perintah-perintah ini terlalu rendah dan mereka memiliki begitu banyak fungsi yang mungkin tidak pernah digunakan oleh pengguna Linux rata-rata. Di sisi lain, perintah manajemen paket yang paling umum digunakan tersebar di apt-get, apt-cachedan apt-config.

The aptperintah telah diperkenalkan untuk memecahkan masalah ini. aptterdiri dari beberapa fitur yang paling banyak digunakan apt-get, apt-cachedan apt-configmengesampingkan fitur yang tidak jelas dan jarang digunakan.

Dengan apt, Anda tidak harus biola jalan dari apt-getke apt-cacheke apt-config. aptlebih terstruktur dan memberi Anda opsi yang diperlukan untuk mengelola paket.

Intinya: apt = opsi perintah yang paling umum digunakan dari apt-get, apt-cachedan apt-config.

Saya telah menulis secara rinci tentang perbedaan antara apt dan apt-get .

abhishek
sumber
15

APT adalah proyek besar, yang rencana awalnya termasuk antarmuka grafis. Ini didasarkan pada perpustakaan yang berisi aplikasi inti, dan apt-get adalah ujung depan pertama - berbasis-baris perintah - yang dikembangkan dalam proyek.

aptadalah ujung depan berbasis baris perintah kedua yang disediakan oleh APT yang mengatasi beberapa kesalahan desain apt-get.

Dikutip dari:

https://debian-handbook.info/browse/stable/sect.apt-get.html

mit
sumber