What’s the Difference Between apt and apt-get?

Both apt and apt-get are command line tools. You can use them to manage software packages like applications and libraries on Debian-based Linux servers and server instances. Since Linux is open source, you have several package options to customize it for your requirements. Debian-based Linux operating systems use the Advanced Package Tool (APT) to manage Linux software packages. The apt command line tool provides a higher-level user interface for end users with intuitive commands, resulting behaviors, and security features. In contrast, the command apt-get is a low-level interface that communicates more closely with core Linux processes. The apt command is a more user-friendly package manager than apt-get.

What are the similarities between apt and apt-get?

Both apt and apt-get are package manager tools for Debian-based Linux distributions (or distros) such as Debian, Ubuntu, Linux Mint, and elementary OS. Similar tools exist, like aptitude and synaptic, although apt-get and apt are the system default.

Next, we describe similarities between apt and apt-get.

Interface

Both the apt command line utility tool and the apt-get command line utility tool are accessible via the Linux command line interface (CLI). To use the Linux CLI, open a terminal window or virtual terminal window.

Documentation

For the official overview of the apt utility and apt-get utility, enter apt or apt-get at the command prompt. This gives you a list of the most common apt commands and apt-get commands.

For example, apt update or apt-get update update the list of available software packages from the official repositories. The apt command and apt-get command also have options listed after them. For example, apt update --quiet provides a less detailed print output of the apt update command to the terminal.

Note that if you’re not logged in as an administrator, you will need to add the sudo command first to each apt command and apt-get command. For example, you would enter sudo apt-get update.

Use cases

The most common tasks in apt and apt-get are to install, update, and remove software packages. Software packages may be applications, libraries, utilities, and tools.

The following table shows common command syntax between the two.

apt

apt-get

  • apt install <package_name>
  • apt remove <package_name>
  • apt purge <package_name>
  • apt upgrade <package_name>
  • apt update
  • apt-get install <package_name>
  • apt-get remove <package_name>
  • apt-get purge <package_name>
  • apt-get upgrade <package_name>
  • apt-get update

Key differences: apt vs. apt-get

The difference between apt and apt-get is not just that apt is a newer version of apt-get. The apt command was designed as a more user-friendly alternative to apt-get, combining the functionality of multiple package management tools for user convenience.

Next, we discuss other differences between apt and apt-get.

Release dates

In 1998, apt-get was released with the Debian 2.0 (Hamm) distribution, while apt was released in 2014 with the Debian 8 (Jessie) distribution. After 2014, apt replaced apt-get as the default package manager tool for all Debian-based Linux distros.

Search capabilities

Search for a package by name by using the apt search <package_name> command. This command gives a detailed description of all packages containing the searched package_name. This operation was not possible with apt-get. Instead you had to use the apt-cache command. 

Dependency resolution

Any software package typically comes with a list of software dependencies, such as libraries or tools it needs to operate correctly. You have to install all dependencies before you can install the package.

Both apt and apt-get handle dependency resolution, however apt is far superior. It determines complex dependency chains where it installs packages in the correct order and recommends suggested packages to install.

Package versions on the file system

By default, the apt upgrade command removes old versions of installed or upgradeable packages on the system that are no longer needed when upgrading.

In contrast, the apt-get upgrade command does not. This efficiency can make apt upgrade better for freeing up system memory.

Printed outputs to the terminal

Both apt-get and apt print status information to the terminal, giving insight into what the system is doing after the input command. The apt command provides slightly more detailed information to the user, including a progress bar on each task.

How does apt replace apt-get?

The apt tool is now the default package management utility for Debian-based Linux distros, and it’s replaced both apt-get and apt-cache. Most apt-get commands are written the same in each new apt command.

However, in the past apt-get had to be used alongside apt-cache for certain commands. The following table shows how these few commands are now ported across to apt.

apt-cache

apt-get

apt

apt-cache search

Not supported

apt search

apt-cache show

Not supported

apt show

apt-cache policy

Not supported

apt policy

You don’t need to replace apt-get commands with apt commands in any existing Linux scripts. They still operate as expected, and apt-get is still supported. Some of the functionality of the older apt-get commands is changed slightly in apt, so keeping apt-get in scripts helps ensure correct operations.

The average Linux user should use apt instead of apt-get unless the project or environment requires it.

Summary of differences: apt vs. apt-get

Category

apt-get

apt

What is it?

A CLI tool for managing software packages on Debian-based Linux systems.

A CLI tool for managing software packages on Debian-based Linux systems.

Year of release and initial Debian distribution

1998, Debian 2.0 (Hamm) distribution.

2014, Debian 8 (Jessie) distribution.

Search capabilities

No. Users must use apt-cache package management commands instead for search.

Yes.

Dependency resolution

Simple dependency resolution.

Complex dependency resolution with suggested software installations.

Package versions on the file system

Older versions of packages remain on the file system when using apt-get upgrade.

Older versions of packages are deleted from the file system when using apt upgrade.

Printed output from operations

Prints basic output from each apt-get command to the user, without much detail.

Prints verbose output from each apt command to the user for more information on operations, including a progress bar on tasks. 

How does AWS support your Linux requirements?

Amazon Web Services (AWS) offers you a portfolio of security-focused, stable, and high-performance Linux-based operating systems. You have options whether you’re looking for an operating system to host your general-purpose workloads or a purpose-built operating system to host containers. For more details, read about Linux from AWS.

For example, Amazon Linux 2023 is a Linux server operating system from AWS. It provides a secure, stable, and high-performance environment to develop and run cloud and enterprise applications. It offers long-term support with access to the latest innovations at no additional charge.

Get started with Linux servers on AWS by creating an account today.

Next Steps with AWS