$ Linux Commands

Package Management — Installing and managing software

apt Package Management

Advanced Package Tool — Debian/Ubuntu package manager

apt COMMAND [PACKAGE]
sudo apt update
sudo apt upgrade
sudo apt install nginx
sudo apt remove nginx
sudo apt autoremove
sudo apt search python3
update refresh package index
upgrade upgrade all packages
install install a package
remove remove a package
autoremove remove unused dependencies
search search for packages
show show package details

Always run apt update before install to get the latest package list.

apt-get Package Management

Classic APT command-line tool

apt-get COMMAND [PACKAGE]
sudo apt-get update
sudo apt-get install python3
sudo apt-get remove python3
sudo apt-get purge python3
update refresh package list
install install package
remove remove package (keep config)
purge remove package and config files

apt is the modern user-friendly version; apt-get is better for scripts.

pip Package Management

Python package installer

pip install [OPTIONS] PACKAGE
pip install flask
pip install -r requirements.txt
pip list
pip freeze > requirements.txt
pip uninstall flask
install install package
uninstall remove package
list list installed packages
freeze output installed packages
-r FILE install from requirements file
--upgrade upgrade a package

Always use pip inside a virtual environment (venv) to avoid system conflicts.

pip3 Package Management

Python 3 package installer

pip3 install [OPTIONS] PACKAGE
pip3 install flask gunicorn
pip3 install -r requirements.txt
pip3 freeze > requirements.txt
Same flags as pip

Use pip3 explicitly when both Python 2 and 3 are installed.