Home Featured [Guide] apt vs apt-get commands, and which one to use?

[Guide] apt vs apt-get commands, and which one to use?

by Travis Rose
Published: Updated:
apt_vs_apt-get

Many Linux users, both veterans, and newbies, often get confused about what the difference between the Linux commands apt, and apt-get are and when they should use one or the other.

A Brief History of the Advanced Packaging Tool (APT)

Debian introduced the apt command in 2014. However, most users were not aware of the new command, opting for the more familiar and reliable apt-get. The apt command did not garner recognition or widespread use until the release of Ubuntu 16.04 in 2016.

Soon after that release, the prevalence of the apt command rather than the traditional apt-get command in Ubuntu 16.04 documentation, how-to articles, and websites prompted other Debian- and Ubuntu-based distros to follow suit and encourage their users to use the apt rather than apt-get command.

Before we get too in-depth with the differences between apt and apt-get, lets first discuss what APT is and why Debian developed it.

When the Debian distribution initially released, a set of tools was necessary to manage the package system. This prompted the development of the Advanced Packaging Tool (APT).  APT is just the front-end to dpkg, Debian’s package management software.  Please don’t confuse the apt command with APT. The two are not the same.

APT is an open-source command-line tool that works with the Linux core libraries to handle the installation, configuration, and removal of packages on Debian, Ubuntu, and other Debian/Ubuntu-related Linux distros.

When APT became available, apt-get was one of the main command-line tools included.  Another oft-used command-line tool was apt-cache, and for successful installation or removal of a package, you had to use both in conjunction.  This was often clunky, cumbersome, and sometimes confusing for the user.  Plus, it was just downright ugly.  Enter the apt command.

The apt Manpage originally stated that the command was meant to be “pleasant for end-users.” It has been since updated to read:

“It is intended as an end-user interface and enables some options better suited for interactive usage by default compared to more specialized APT tools like apt-get(8) and apt-cache(8).”

apt command replacements for apt-get commands

apt CommandCommand It ReplacesFunction of Command
apt installapt-get installInstall a package.
apt removeapt-get removeRemove package.
apt purgeapt-get purgeRemove package and configuration.
apt updateapt-get updateRefresh repository index.
apt upgradeapt-get upgradeUpgrade all upgradeable packages.
apt autoremoveapt-get autoremoveRemove unwanted packages.
apt full-upgradeapt-get dist-upgradeUpgrade package & auto-handle dependencies.
apt searchapt-cache searchSearch for a packages.
apt showapt-cache showShow package details.

apt, in addition to the replacement commands above, also adds two new commands that the apt man page lists as “work-in-progress.”  These two are:

  • apt list – List packages with criteria (installed, all available, upgradeable)
  • apt edit-sources – Edits the sources.list file in the preferred editor

apt vs. apt-get: know the differences

The best way to show the difference between the apt and the apt-get commands is to see in action.  To do this, we will install Kazam, one of the best and easiest to use screen recorders for Linux using both commands.

Let’s try apt-get first.

# sudo apt-get install kazam

While the installation with apt-get is straightforward, and we see the package and the dependency packages being installed, we have no clue how long the installation will run.

Now let’s install Kazam with the apt command.

# sudo apt install kazam

With the apt command, not only do we see Kazam and all the dependent applications being installed, but we’re presented a nice progress bar at the bottom of the terminal window, letting us know the progress of is installation. Much better, isn’t it?

We could have achieved the same results with apt-get and some additional command options. But why bother, apt has them built-in.

Conclusion

So, what should you use, apt or apt-get?  Unless there is a compelling reason not to, always opt for the apt command. It combines the most commonly used commands from apt-get and apt-cache with much less fuss.

The only logical reason to use the apt-get and related commands is if you are using them in a bash script. These commands are lower-level, considered “back-end,” and are most often used to support APT-based packages such as Synaptic, aptitude, and the Ubuntu Update Manager.

Dedicated users of the apt-get and apt-cache commands should not be discouraged, however. Debian has no plans to deprecate the apt-get or apt-cache commands, as both are vital in creating APT-based packages. And while it’s recommended that you use the apt, it’s not a requirement.  apt-get will work just fine.

The apt command, conversely, is specially designed for use by the end-user.  It’s friendlier, tidier, and fancier. This was clear in our example. Plus, that progress bar is pretty cool!

We encourage you to check out the various options of both commands via

# man apt-get

and

# man apt

Please let us know your experience with the commands, as well as your preferred command and why.

You may also like

3 comments

SFer September 4, 2020 - 7:28 PM

Great post!.
And great site…thanks for your always clear concise writing,
with stepXstep examples…

SFer
Ubuntu Linux 20.04.4
Rstudio
R
awk
==============

Reply
Paperclip October 1, 2020 - 11:33 PM

Nice explanation! What about the aptitude command? How does it compare to apt and apt-get?

Reply
Kiran Kumar October 2, 2020 - 8:25 AM

Sure, we have lined up the article for you; should be published in a week time.

Reply

Leave a Comment

fl_logo_v3_footer

ENHANCE YOUR LINUX EXPERIENCE.



FOSS Linux is a leading resource for Linux enthusiasts and professionals alike. With a focus on providing the best Linux tutorials, open-source apps, news, and reviews written by team of expert authors. FOSS Linux is the go-to source for all things Linux.

Whether you’re a beginner or an experienced user, FOSS Linux has something for everyone.

Follow Us

Subscribe

©2016-2023 FOSS LINUX

A PART OF VIBRANT LEAF MEDIA COMPANY.

ALL RIGHTS RESERVED.

“Linux” is the registered trademark by Linus Torvalds in the U.S. and other countries.