9+chars

add-apt-repository
Manages apt repository definitions.

More information: https://manned.org/apt-add-repository.

Add a new apt repository: add-apt-repository repository_spec

Remove an apt repository: add-apt-repository --remove repository_spec

Update the package cache after adding a repository: add-apt-repository --update repository_spec

Enable source packages: add-apt-repository --enable-source repository_spec

apache2ctl
The CLI tool to administrate HTTP web server Apache.This command comes with Debian based OSes, for RHEL based ones see httpd.

More information: https://manpages.debian.org/latest/apache2/apache2ctl.8.en.html.

Start the Apache daemon. Throw a message if it is already running: sudo apache2ctl start

Stop the Apache daemon: sudo apache2ctl stop

Restart the Apache daemon: sudo apache2ctl restart

Test syntax of the configuration file: sudo apache2ctl -t

List loaded modules: sudo apache2ctl -M

apport-bug
File a bug report on Ubuntu.

More information: https://wiki.ubuntu.com/Apport.

Report a bug about the whole system: apport-bug

Report a bug about a specific package: apport-bug package

Report a bug about a specific executable: apport-bug path/to/executable

Report a bug about a specific process: apport-bug PID

apt-add-repository
Manages apt repository definitions.

More information: https://manpages.debian.org/latest/software-properties-common/apt-add-repository.1.html.

Add a new apt repository: apt-add-repository repository_spec

Remove an apt repository: apt-add-repository --remove repository_spec

Update the package cache after adding a repository: apt-add-repository --update repository_spec

Enable source packages: apt-add-repository --enable-source repository_spec

arch-chroot
Enhanced chroot command to help in the Arch Linux installation process.

More information: https://man.archlinux.org/man/arch-chroot.8.

Start an interactive shell (bash, by default) in a new root directory: arch-chroot path/to/new/root

Specify the user (other than the current user) to run the shell as: arch-chroot -u user path/to/new/root

Run a custom command (instead of the default bash) in the new root directory: arch-chroot path/to/new/root command command_arguments

Specify the shell, other than the default bash (in this case, the zsh package should have been installed in the target system): arch-chroot path/to/new/root zsh

archinstall
Guided Arch Linux installer with a twist.

More information: https://archinstall.readthedocs.io.

Start the interactive installer: archinstall

Start a preset installer: archinstall minimal|unattended

archlinux-java
A helper script that provides functionalities for Java environments.

More information: https://github.com/michaellass/archlinux-java-run.

List installed Java environments: archlinux-java status

Set the default Java environment: archlinux-java set java_environment

Unset the default Java environment: archlinux-java unset

Set the default Java environment automatically: archlinux-java fix

arithmetic
Quiz on simple arithmetic problems.

More information: https://manpages.debian.org/bsdgames/arithmetic.6.en.html.

Start an arithmetic quiz: arithmetic

Specify one or more arithmetic [o]peration symbols to get problems on them: arithmetic -o +|-|x|/

Specify a range. Addition and multiplication problems would feature numbers between 0 and range, inclusive. Subtraction and division problems would have required result and number to be operated on, between 0 and range: arithmetic -r 7

authconfig
A CLI interface for configuring system authentication resources.

More information: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system-level_authentication_guide/authconfig-install.

Display the current configuration (or dry run): authconfig --test

Configure the server to use a different password hashing algorithm: authconfig --update --passalgo=algorithm

Enable LDAP authentication: authconfig --update --enableldapauth

Disable LDAP authentication: authconfig --update --disableldapauth

Enable Network Information Service (NIS): authconfig --update --enablenis

Enable Kerberos: authconfig --update --enablekrb5

Enable Winbind (Active Directory) authentication: authconfig --update --enablewinbindauth

Enable local authorization: authconfig --update --enablelocauthorize

avahi-browse
Displays services and hosts exposed on the local network via mDNS/DNS-SD.Avahi is compatible with Bonjour (Zeroconf) found in Apple devices.

More information: https://www.avahi.org/.

List all services available on the local network along with their addresses and ports while ignoring local ones: avahi-browse --all --resolve --ignore-local

List all domains: avahi-browse --browse-domains

Limit the search to a particular domain: avahi-browse --all --domain=domain

betterlockscreen
Simple, minimal lock screen.

More information: https://github.com/pavanjadhaw/betterlockscreen.

Lock the screen: betterlockscreen --lock

Change the lock screen background: betterlockscreen -u path/to/image.png

Lock the screen, showing some custom text: betterlockscreen -l pixel -t "custom lock screen text"

Lock the screen, with a custom monitor off timeout in seconds: betterlockscreen --off 5 -l

blkdiscard
Discards device sectors on storage devices. Useful for SSDs.

More information: https://manned.org/blkdiscard.

Discard all sectors on a device, removing all data: blkdiscard /dev/device

Securely discard all blocks on a device, removing all data: blkdiscard --secure /dev/device

Discard the first 100 MB of a device: B /dev/device

bluetoothctl
Manage Bluetooth devices from the command-line.

More information: https://www.npmjs.com/package/bluetoothctl.

Enter the bluetoothctl shell: bluetoothctl

List devices: bluetoothctl -- devices

Pair a device: bluetoothctl -- pair mac_address

Remove a device: bluetoothctl -- remove mac_address

Connect a paired device: bluetoothctl -- connect mac_address

Disconnect a paired device: bluetoothctl -- disconnect mac_address

bluetoothd
Daemon to manage bluetooth devices.

More information: https://manned.org/bluetoothd.

Start the daemon: bluetoothd

Start the daemon, logging to stdout: bluetoothd --nodetach

Start the daemon with a specific configuration file (defaults to /etc/bluetooth/main.conf): bluetoothd --configfile path/to/file

Start the daemon with verbose output to stderr: bluetoothd --debug

Start the daemon with verbose output coming from specific files in the bluetoothd or plugins source: bluetoothd --debug=path/to/file1:path/to/file2:path/to/file3

btrfs device
Manage devices in a btrfs filesystem.

More information: https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-device.

Add one or more devices to a btrfs filesystem: sudo btrfs device add path/to/block_device1 [path/to/block_device2] path/to/btrfs_filesystem

Remove a device from a btrfs filesystem: sudo btrfs device remove path/to/device|device_id [...]

Display error statistics: sudo btrfs device stats path/to/btrfs_filesystem

Scan all disks and inform the kernel of all detected btrfs filesystems: sudo btrfs device scan --all-devices

Display detailed per-disk allocation statistics: sudo btrfs device usage path/to/btrfs_filesystem

btrfs filesystem
Manage btrfs filesystems.

More information: https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-filesystem.

Show filesystem usage (optionally run as root to show detailed information): btrfs filesystem usage path/to/btrfs_mount

Show usage by individual devices: sudo btrfs filesystem show path/to/btrfs_mount

Defragment a single file on a btrfs filesystem (avoid while a deduplication agent is running): sudo btrfs filesystem defragment -v path/to/file

Defragment a directory recursively (does not cross subvolume boundaries): sudo btrfs filesystem defragment -v -r path/to/directory

Force syncing unwritten data blocks to disk(s): sudo btrfs filesystem sync path/to/btrfs_mount

Summarize disk usage for the files in a directory recursively: sudo btrfs filesystem du --summarize path/to/directory

btrfs scrub
Scrub btrfs filesystems to verify data integrity.It is recommended to run a scrub once a month.

More information: https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-scrub.

Start a scrub: sudo btrfs scrub start path/to/btrfs_mount

Show the status of an ongoing or last completed scrub: sudo btrfs scrub status path/to/btrfs_mount

Cancel an ongoing scrub: sudo btrfs scrub cancel path/to/btrfs_mount

Resume a previously cancelled scrub: sudo btrfs scrub resume path/to/btrfs_mount

Start a scrub, but wait until the scrub finishes before exiting: sudo btrfs scrub start -B path/to/btrfs_mount

Start a scrub in quiet mode (does not print errors or statistics): sudo btrfs scrub start -q path/to/btrfs_mount

btrfs subvolume
Manage btrfs subvolumes and snapshots.

More information: https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-subvolume.

Create a new empty subvolume: sudo btrfs subvolume create path/to/new_subvolume

List all subvolumes and snapshots in the specified filesystem: sudo btrfs subvolume list path/to/btrfs_filesystem

Delete a subvolume: sudo btrfs subvolume delete path/to/subvolume

Create a read-only snapshot of an existing subvolume: sudo btrfs subvolume snapshot -r path/to/source_subvolume path/to/target

Create a read-write snapshot of an existing subvolume: sudo btrfs subvolume snapshot path/to/source_subvolume path/to/target

Show detailed information about a subvolume: sudo btrfs subvolume show path/to/subvolume

check-support-status
Identify installed Debian packages for which support has had to be limited or prematurely ended.

More information: https://manpages.debian.org/buster/debian-security-support/check-support-status.1.en.html.

Display packages whose support is limited, has already ended or will end earlier than the distribution's end of life: check-support-status

Display only packages whose support has ended: check-support-status --type ended

Skip printing a headline: check-support-status --no-heading

coredumpctl
Retrieve and process saved core dumps and metadata.

More information: https://www.freedesktop.org/software/systemd/man/coredumpctl.html.

List all captured core dumps: coredumpctl list

List captured core dumps for a program: coredumpctl list program

Show information about the core dumps matching a program with PID: coredumpctl info PID

Invoke debugger using the last core dump of a program: coredumpctl debug program

Extract the last core dump of a program to a file: coredumpctl --output=path/to/file dump program

cpufreq-aperf
Calculate the average CPU frequency over a time period.Requires root privileges.

More information: https://manned.org/cpufreq-aperf.

Start calculating, defaulting to all CPU cores and 1 second refresh interval: sudo cpufreq-aperf

Start calculating for CPU 1 only: sudo cpufreq-aperf -c 1

Start calculating with a 3 second refresh interval for all CPU cores: sudo cpufreq-aperf -i 3

Calculate only once: sudo cpufreq-aperf -o

cpufreq-info
A tool to show CPU frequency information.

More information: https://manned.org/cpufreq-info.

Show CPU frequency information for all CPUs: cpufreq-info

Show CPU frequency information for the specified CPU: cpufreq-info -c cpu_number

Show the allowed minimum and maximum CPU frequency: cpufreq-info -l

Show the current minimum and maximum CPU frequency and policy in table format: cpufreq-info -o

Show available CPU frequency policies: cpufreq-info -g

Show current CPU work frequency in a human-readable format, according to the cpufreq kernel module: cpufreq-info -f -m

Show current CPU work frequency in a human-readable format, by reading it from hardware (only available to root): sudo cpufreq-info -w -m

cpufreq-set
A tool to modify CPU frequency settings.The frequency value should range between the output of command cpufreq-info -l.

More information: https://manned.org/cpufreq-set.

Set the CPU frequency policy of CPU 1 to "userspace": sudo cpufreq-set -c 1 -g userspace

Set the current minimum CPU frequency of CPU 1: sudo cpufreq-set -c 1 --min min_frequency

Set the current maximum CPU frequency of CPU 1: sudo cpufreq-set -c 1 --max max_frequency

Set the current work frequency of CPU 1: sudo cpufreq-set -c 1 -f work_frequency

cryptsetup
Manage plain dm-crypt and LUKS (Linux Unified Key Setup) encrypted volumes.

More information: https://gitlab.com/cryptsetup/cryptsetup/.

Initialize a LUKS volume (overwrites all data on the partition): cryptsetup luksFormat /dev/sda1

Open a LUKS volume and create a decrypted mapping at /dev/mapper/target: cryptsetup luksOpen /dev/sda1 target

Remove an existing mapping: cryptsetup luksClose target

Change the LUKS volume's passphrase: cryptsetup luksChangeKey /dev/sda1

ctrlaltdel
Utility to control what happens when CTRL+ALT+DEL is pressed.

Get current setting: ctrlaltdel

Set CTRL+ALT+DEL to reboot immediately, without any preparation: sudo ctrlaltdel hard

Set CTRL+ALT+DEL to reboot "normally", giving processes a chance to exit first (send SIGINT to PID1): sudo ctrlaltdel soft

dbus-daemon
The D-Bus message daemon, allowing multiple programs to exchange messages.

More information: https://www.freedesktop.org/wiki/Software/dbus/.

Run the daemon with a configuration file: dbus-daemon --config-file path/to/file

Run the daemon with the standard per-login-session message bus configuration: dbus-daemon --session

Run the daemon with the standard systemwide message bus configuration: dbus-daemon --system

Set the address to listen on and override the configuration value for it: dbus-daemon --address address

Output the process ID to stdout: dbus-daemon --print-pid

Force the message bus to write to the system log for messages: dbus-daemon --syslog

dconf write
Write a value to a dconf database path.

More information: https://developer.gnome.org/dconf.

Write a string to a dconf path (note the nested quotes): dconf write /example/dconf/path "'Example Value'"

Write a boolean to a dconf path: dconf write /example/dconf/path true|false

Write an integer to a dconf path: dconf write /example/dconf/path 16

Write an array to a dconf path: dconf write /example/dconf/path "['My First Value', 'My Second Value']"

Write an empty array to a dconf path: dconf write /example/dconf/path "@as []"

debootstrap
Create a basic Debian system.

More information: https://wiki.debian.org/Debootstrap.

Create a Debian stable release system inside the debian-root directory: sudo debootstrap stable path/to/debian-root/ http://deb.debian.org/debian

Create an Ubuntu 20.04 system inside the focal-root directory with a local mirror: sudo debootstrap focal path/to/focal-root/ file:///path/to/mirror/

Switch to a bootstrapped system: sudo chroot path/to/root

List available releases: ls /usr/share/debootstrap/scripts/ No tldr entry for dirlist.txt

do-release-upgrade
The Ubuntu release upgrader.

More information: https://ubuntu.com/server/docs/upgrade-introduction.

Upgrade to the latest release: sudo do-release-upgrade

Upgrade to the latest development release: sudo do-release-upgrade --devel-release

Upgrade to the latest proposed release: sudo do-release-upgrade --proposed

dpkg-query
A tool that shows information about installed packages.

More information: https://manpages.debian.org/latest/dpkg/dpkg-query.1.html.

List all installed packages: dpkg-query -l

List installed packages matching a pattern: dpkg-query -l 'pattern'

List all files installed by a package: dpkg-query -L package_name

Show information about a package: dpkg-query -s package_name

duperemove
Finds duplicate filesystem extents and optionally schedule them for deduplication.An extent is small part of a file inside the filesystem.On some filesystems one extent can be referenced multiple times, when parts of the content of the files are identical.

More information: https://markfasheh.github.io/duperemove/.

Search for duplicate extents in a directory and show them: duperemove -r path/to/directory

Deduplicate duplicate extents on a Btrfs or XFS (experimental) filesystem: duperemove -r -d path/to/directory

Use a hash file to store extent hashes (less memory usage and can be reused on subsequent runs): duperemove -r -d --hashfile=path/to/hashfile path/to/directory

Limit I/O threads (for hashing and dedupe stage) and CPU threads (for duplicate extent finding stage): duperemove -r -d --hashfile=path/to/hashfile --io-threads=N --cpu-threads=N path/to/directory

e2freefrag
Print the free space fragmentation information for ext2/ext3/ext4 filesystems.

More information: https://manned.org/e2freefrag.

Check how many free blocks are present as contiguous and aligned free space: e2freefrag /dev/sdXN

Specify chunk size in kilobytes to print how many free chunks are available: e2freefrag -c chunk_size_in_kb /dev/sdXN

efibootmgr
Manipulate the UEFI Boot Manager.

More information: https://manned.org/efibootmgr.

List the current settings / bootnums: efibootmgr

List the filepaths: efibootmgr -v

Add UEFI Shell v2 as a boot option: sudo efibootmgr -c -d /dev/sda1 -l \EFI\tools\Shell.efi -L "UEFI Shell"

Change the current boot order: sudo efibootmgr -o 0002,0008,0001,0005

Delete a boot option: sudo efibootmgr -b 0008 --delete-bootnum

enum4linux
Tool for enumerating Windows and Samba information from remote systems.It attempts to offer similar functionality to enum.exe formerly available from www.bindview.com.

More information: https://labs.portcullis.co.uk/tools/enum4linux/.

Try to enumerate using all methods: enum4linux -a remote_host

Enumerate using given login credentials: enum4liux -u user_name -p password remote_host

List usernames from a given host: enum4liux -U remote_host

List shares: enum4liux -S remote_host

Get OS information: enum4liux -o remote_host

extundelete
Recover deleted files from ext3 or ext4 partitions by parsing the journal.See also date for Unix time information and umount for unmounting partitions.

More information: http://extundelete.sourceforge.net.

Restore all deleted files inside partition N on device X:  sudo extundelete /dev/sdXN --restore-all

Restore a file from a path relative to root (Do not start the path with /): extundelete /dev/sdXN --restore-file path/to/file

Restore a directory from a path relative to root (Do not start the path with /): extundelete /dev/sdXN --restore-directory path/to/directory

Restore all files deleted after January 1st, 2020 (in Unix time): extundelete /dev/sdXN --restore-all --after 1577840400

fail2ban-client
Configure and control fail2ban server.

More information: https://github.com/fail2ban/fail2ban.

Retrieve current status of the jail service: fail2ban-client status jail

Remove the specified IP from the jail service's ban list: fail2ban-client set jail unbanip ip

Verify fail2ban server is alive: fail2ban-client ping

fc-pattern
Shows information about a font matching a pattern.

More information: https://manned.org/fc-pattern.

Display default information about a font: fc-pattern --default 'DejaVu Serif'

Display config information about a font: fc-pattern --config 'DejaVu Serif'

feedreader
A GUI desktop RSS client.

More information: https://jangernert.github.io/FeedReader/.

Print the count of unread articles: feedreader --unreadCount

Add a URL for a feed to follow: feedreader --addFeed=feed_url

Grab a specific article using its URL: feedreader --grabArticle=article_url

Download all images from a specific article: feedreader --url=feed_url --grabImages=article_path

Play media from a URL: feedreader --playMedia=article_url

flatpak-builder
Help build application dependencies.

More information: https://docs.flatpak.org/en/latest/flatpak-builder-command-reference.html.

Build a Flatpak and export it to a new repository: flatpak-builder path/to/build_directory path/to/manifest

Build a Flatpak and export it to the specified repository: flatpak-builder --repo=repository_name path/to/build_directory path/to/manifest

Build a Flatpak and install it locally: flatpak-builder --install path/to/build_directory path/to/manifest

Build and sign a Flatpak and export it to the specified repository: flatpak-builder --gpg-sign=key_id --repo=repository_name path/to/manifest

Run a shell inside of an application sandbox without installing it: flatpak-builder --run path/to/build_directory path/to/manifest sh

gnome-extensions
Manage gnome extensions from the terminal.

More information: https://wiki.gnome.org/Projects/GnomeShell/Extensions.

Display the version: gnome-extensions version

List all the installed extensions: gnome-extensions list

Display information about a specific extension: gnome-extensions info "extension_id"

Display help for a subcommand (like list): gnome-extensions help subcommand

Enable a specific extension: gnome-extensions enable "extension_id"

Disable a specific extension: gnome-extension disable "extension_id"

Uninstall a specific extension: gnome-extension uninstall "extension_id"

gnome-terminal
The GNOME Terminal emulator.

More information: https://help.gnome.org/users/gnome-terminal/stable/.

Open a new GNOME terminal window: gnome-terminal

Run a specific command in a new terminal window: gnome-terminal -- command

Open a new tab in the last opened window instead: gnome-terminal --tab

Set the title of the new tab: gnome-terminal --tab --title "title"

google-chrome
The web browser from Google.

More information: https://chrome.google.com.

Run with a custom profile directory: google-chrome --user-data-dir=path/to/directory

Run without CORS validation, useful to test an API: google-chrome --user-data-dir=path/to/directory --disable-web-security

grub-install
Install GRUB to a device.

More information: https://www.gnu.org/software/grub/manual/grub/html_node/Installing-GRUB-using-grub_002dinstall.html.

Install GRUB on a BIOS system: grub-install --target=i386-pc path/to/device

Install GRUB on an UEFI system: grub-install --target=x86_64-efi --efi-directory=path/to/efi_directory --bootloader-id=GRUB

Install GRUB pre-loading specific modules: grub-install --target=x86_64-efi --efi-directory=path/to/efi_directory --modules="part_gpt part_msdos"

grub-mkconfig
Generate a GRUB configuration file.

More information: https://www.gnu.org/software/grub/manual/grub/html_node/Invoking-grub_002dmkconfig.html.

Do a dry run and print the configuration to stdout: sudo grub-mkconfig

Generate the configuration file: sudo grub-mkconfig --output=/boot/grub/grub.cfg

Print the help page: grub-mkconfig --help

guix package
Install, upgrade and remove Guix packages, or rollback to previous configurations.

More information: https://guix.gnu.org/manual/html_node/Invoking-guix-package.html.

Install a new package: guix package -i package_name

Remove a package: guix package -r package_name

Search the package database for a regular expression: guix package -s "search_pattern"

List installed packages: guix package -I

List generations: guix package -l

Roll back to the previous generation: guix package --roll-back

hostnamectl
Get or set the hostname of the computer.

Get the hostname of the computer: hostnamectl

Set the hostname of the computer: sudo hostnamectl set-hostname "hostname"

Set a pretty hostname for the computer: sudo hostnamectl set-hostname --static "hostname.example.com" && sudo hostnamectl set-hostname --pretty "hostname"

Reset hostname to its default value: sudo hostnamectl set-hostname --pretty ""

http-prompt
An interactive command-line HTTP client featuring autocomplete and syntax highlighting.

Launch a session targeting the default URL of http://localhost:8000 or the previous session: http-prompt

Launch a session with a given URL: http-prompt http://example.com

Launch a session with some initial options: http-prompt localhost:8000/api --auth username:password

inotifywait
Waits for changes to one or more files.

Run a command when a file changes: while inotifywait path/to/file; do command; done

Be quiet about watching for changes: while inotifywait --quiet path/to/file; do command; done

Watch a directory recursively for changes: while inotifywait --recursive path/to/directory; do command; done

Exclude files matching a regular expression: while inotifywait --recursive path/to/directory --exclude 'regular_expression'; do command; done

Wait at most 30 seconds: while inotifywait --timeout 30 path/to/file; do command; done

Only watch for file modification events: while inotifywait --event modify path/to/file; do command; done

ip address
IP Address management subcommand.

List network interfaces and their associated IP addresses: ip address

Filter to show only active network interfaces: ip address show up

Display information about a specific network interface: ip address show dev eth0

Add an IP address to a network interface: ip address add ip_address dev eth0

Remove an IP address from a network interface: ip address delete ip_address dev eth0

Delete all IP addresses in a given scope from a network interface: ip address flush dev eth0 scope global|host|link

ip-neighbour
Neighbour/ARP tables management IP subcommand.

More information: https://manned.org/ip-neighbour.8.

Display the neighbour/ARP table entries: ip neighbour

Remove entries in the neighbour table on device eth0: sudo ip neighbour flush dev eth0

Perform a neighbour lookup and return a neighbour entry: ip neighbour get lookup_ip dev eth0

Add or delete an ARP entry for the neighbour IP address to eth0: sudo ip neighbour add|del ip_address lladdr mac_address dev eth0 nud reachable

Change or replace an ARP entry for the neighbour IP address to eth0: sudo ip neighbour change|replace ip_address lladdr new_mac_address dev eth0

journalctl
Query the systemd journal.

Show all messages from this [b]oot: journalctl -b

Show all messages from last [b]oot: journalctl -b -1

Show all messages with priority level 3 (errors) from this [b]oot: journalctl -b --priority=3

[f]ollow new messages (like tail -f for traditional syslog): journalctl -f

Show all messages by a specific [u]nit: journalctl -u unit

Filter messages within a time range (either timestamp or placeholders like "yesterday"): journalctl --since now|today|yesterday|tomorrow --until YYYY-MM-DD HH:MM:SS

Show all messages by a specific process: journalctl _PID=pid

Show all messages by a specific executable: journalctl path/to/executable

kde-inhibit
Inhibit various desktop functions while a command runs.

Inhibit power management: kde-inhibit --power command command_arguments

Inhibit screen saver: kde-inhibit --screenSaver command command_arguments

Launch VLC, and inhibit color correction (night mode) while it's running: kde-inhibit --colorCorrect vlc

kpackagetool5
KPackage Manager: Install, list, remove Plasma packages.

More information: https://techbase.kde.org/Development/Tutorials/Plasma5/QML2/GettingStarted#Kpackagetool5.

List all known package types that can be installed: kpackagetool5 --list-types

Install the package from a directory: kpackagetool5 --type package_type --install path/to/directory

Update installed package from a directory: kpackagetool5 --type package_type --upgrade path/to/directory

List installed plasmoids (--global for all users): kpackagetool5 --type Plasma/Applet --list --global

Remove a plasmoid by name: kpackagetool5 --type Plasma/Applet --remove "name"

kreadconfig5
Read KConfig entries for KDE Plasma.

More information: https://userbase.kde.org/KDE_System_Administration/Configuration_Files.

Read a key from the global configuration: kreadconfig5 --group group_name --key key_name

Read a key from a specific configuration file: kwriteconfig5 --file path/to/file --group group_name --key key_name

Check if systemd is used to start the Plasma session: kreadconfig5 --file startkderc --group General --key systemdBoot

kscreen-console
Command-line tool to query KScreen's status.

More information: https://manned.org/kscreen-console.

Show all outputs and configuration files to attach to a bug report: kscreen-console bug

Show paths to KScreen configuration files: kscreen-console config

Show KScreen output information and configuration: kscreen-console outputs

Monitor for changes: kscreen-console monitor

Show the current KScreen configuration as JSON: kscreen-console json

Display help: kscreen-console --help

Display help including Qt specific command-line options: kscreen-console --help-all

kscreen-doctor
Change and manipulate the screen setup from the command-line.

More information: https://invent.kde.org/plasma/libkscreen.

Show display output information: kscreen-doctor --outputs

Set the rotation of a display output with an ID of 1 to the right: kscreen-doctor output.1.rotation.right

Set the scale of a display output with an ID of HDMI-2 to 2 (200%): kscreen-doctor output.HDMI-2.scale.2

ksvgtopng5
Convert SVG files to PNG format.

More information: https://invent.kde.org/plasma/kde-cli-tools/-/blob/master/ksvgtopng/ksvgtopng.cpp.

Convert an SVG file (should be an absolute path) to PNG: ksvgtopng5 width height path/to/file.svg output_filename.png

kwriteconfig5
Write KConfig entries for KDE Plasma.

More information: https://userbase.kde.org/KDE_System_Administration/Configuration_Files.

Display help: kwriteconfig5 --help

Set a global configuration key: kwriteconfig5 --group group_name --key key value

Set a key in a specific configuration file: kwriteconfig5 --file path/to/file --group group_name --key key value

Delete a key: kwriteconfig5 --group group_name --key key --delete

Use systemd to start the Plasma session when available: kwriteconfig5 --file startkderc --group General --key systemdBoot true

Hide the title bar when a window is maximized (like Ubuntu): kwriteconfig5 --file ~/.config/kwinrc --group Windows --key BorderlessMaximizedWindows true

Configure KRunner to open with the Meta (Command/Windows) global hotkey: kwriteconfig5 --file ~/.config/kwinrc --group ModifierOnlyShortcuts --key Meta "org.kde.kglobalaccel,/component/krunner_desktop,org.kde.kglobalaccel.Component,invokeShortcut,_launch"

libreoffice
CLI for the powerful and free office suite LibreOffice.

More information: https://www.libreoffice.org/.

Open a space-separated list of files in read-only mode: libreoffice --view path/to/file1 path/to/file2

Display the content of specific files: libreoffice --cat path/to/file1 path/to/file2

Print files to a specific printer: libreoffice --pt printer_name path/to/file1 path/to/file2

Convert all .doc files in current directory to PDF: libreoffice --convert-to pdf *.doc

lsb_release
Provides certain LSB (Linux Standard Base) and distribution-specific information.

More information: https://manned.org/lsb_release.

Print all available information: lsb_release -a

Print a description (usually the full name) of the operating system: lsb_release -d

Print only the operating system name (ID), suppressing the field name: lsb_release -i -s

Print the release number and codename of the distribution, suppressing the field names: lsb_release -rcs

lxterminal
Terminal emulator for LXDE.

More information: https://wiki.lxde.org/en/LXTerminal.

Open an LXTerminal window: lxterminal

Open an LXTerminal window, run a command, and then exit: lxterminal -e "command"

Open an LXTerminal window with multiple tabs: lxterminal --tabs=tab_name1,tab_name2,...

Open an LXTerminal window with a specific title: lxterminal --title=title_name

Open an LXTerminal window with a specific working directory: lxterminal --working-directory=path/to/directory

macchanger
Command-line utility for manipulating network interface MAC addresses.

More information: https://manned.org/macchanger.

View the current and permanent MAC addresses of a interface: macchanger --show interface

Set interface to a random MAC: macchanger --random interface

Set interface to a specific MAC: macchanger --mac XX:XX:XX:XX:XX:XX interface

Reset interface to its permanent hardware MAC: macchanger --permanent interface

mkfs.btrfs
Create a btrfs filesystem.Defaults to raid1, which specifies 2 copies of a given data block spread across 2 different devices.

More information: https://btrfs.wiki.kernel.org/index.php/Manpage/mkfs.btrfs.

Create a btrfs filesystem on a single device: sudo mkfs.btrfs --metadata single --data single /dev/sda

Create a btrfs filesystem on multiple devices with raid1: sudo mkfs.btrfs --metadata raid1 --data raid1 /dev/sda /dev/sdb /dev/sdN

Set a label for the filesystem: sudo mkfs.btrfs --label "label" /dev/sda [/dev/sdN]

mkfs.cramfs
Creates a ROM filesystem inside a partition.

More information: https://manned.org/mkfs.cramfs.

Create a ROM filesystem inside partition 1 on device b (sdb1): mkfs.cramfs /dev/sdb1

Create a ROM filesystem with a volume-name: mkfs.cramfs -n volume_name /dev/sdb1

mkfs.exfat
Creates an exfat filesystem inside a partition.

More information: https://manned.org/mkfs.exfat.

Create an exfat filesystem inside partition 1 on device b (sdb1): mkfs.exfat /dev/sdb1

Create filesystem with a volume-name: mkfs.exfat -n volume_name /dev/sdb1

Create filesystem with a volume-id: mkfs.exfat -i volume_id /dev/sdb1

mkfs.minix
Creates a Minix filesystem inside a partition.

More information: https://manned.org/mkfs.minix.

Create a Minix filesystem inside partition 1 on device b (sdb1): mkfs.minix /dev/sdb1

mkinitcpio
Generates initial ramdisk environments for booting the Linux kernel based on the specified preset(s).

More information: https://man.archlinux.org/man/mkinitcpio.8.

Perform a dry run (print what would be done without actually doing it): mkinitcpio

Generate a ramdisk environment based on the linux preset: mkinitcpio --preset linux

Generate a ramdisk environment based on the linux-lts preset: mkinitcpio --preset linux-lts

Generate ramdisk environments based on all existing presets (used to regenerate all the initramfs images after a change in /etc/mkinitcpio.conf): mkinitcpio --allpresets

Generate an initramfs image using an alternative configuration file: mkinitcpio --config path/to/mkinitcpio.conf --generate path/to/initramfs.img

Generate an initramfs image for a kernel other than the one currently running (the installed kernel releases can be found in /usr/lib/modules/): mkinitcpio --kernel kernel_version --generate path/to/initramfs.img

List all available hooks: mkinitcpio --listhooks

Display help for a specific hook: mkinitcpio --hookhelp hook_name

mklost+found
Create a lost+found directory.

More information: https://manned.org/mklost+found.

Create a lost+found directory in the current directory: mklost+found

mountpoint
Test if a directory is a filesystem mountpoint.

More information: https://manned.org/mountpoint.

Check if a directory is a mountpoint: mountpoint path/to/directory

Check if a directory is a mountpoint without showing any output: mountpoint -q path/to/directory

Show major/minor numbers of a mountpoint's filesystem: mountpoint --fs-devno path/to/directory

netselect-apt
Create a sources.list file for a Debian mirror with the lowest latency.

More information: https://manpages.debian.org/buster/netselect-apt/netselect-apt.1.html.

Create sources.list using the lowest latency server: sudo netselect-apt

Specify Debian branch, stable is used by default: sudo netselect-apt testing

Include non-free section: sudo netselect-apt --non-free

Specify a country for the mirror list lookup: sudo netselect-apt -c India

nixos-rebuild
Reconfigure a NixOS machine.

More information: https://nixos.org/nixos/manual/#sec-changing-config.

Build and switch to the new configuration, making it the boot default: sudo nixos-rebuild switch

Build and switch to the new configuration, making it the boot default and naming the boot entry: sudo nixos-rebuild switch -p name

Build and switch to the new configuration, making it the boot default and installing updates: sudo nixos-rebuild switch --upgrade

Rollback changes to the configuration, switching to the previous generation: sudo nixos-rebuild switch --rollback

Build the new configuration and make it the boot default without switching to it: sudo nixos-rebuild boot

Build and activate the new configuration, but don't make a boot entry (for testing purposes): sudo nixos-rebuild test

Build the configuration and open it in a virtual machine: sudo nixos-rebuild build-vm

nmcli connection
Connection management with NetworkManager.

More information: https://man.archlinux.org/man/nmcli.1.

List all NetworkManager connections (shows name, UUID, type and device): nmcli connection

Activate a connection by specifying a UUID: nmcli connection up uuid uuid

Deactivate a connection: nmcli connection down uuid uuid

Create an auto-configured dual stack connection: nmcli connection add ifname interface_name type ethernet ipv4.method auto ipv6.method auto

Create a static IPv6-only connection: nmcli connection add ifname interface_name type ethernet ip6 2001:db8::2/64 gw6 2001:db8::1 ipv6.dns 2001:db8::1 ipv4.method ignore

Create a static IPv4-only connection: nmcli connection add ifname interface_name type ethernet ip4 10.0.0.7/8 gw4 10.0.0.1 ipv4.dns 10.0.0.1 ipv6.method ignore

Create a VPN connection using OpenVPN from a OVPN file: nmcli connection import type openvpn file path/to/vpn_config.ovpn

nmcli device
Hardware device management with NetworkManager.

More information: https://man.archlinux.org/man/nmcli.1.

Print the statuses of all network interfaces: nmcli device status

Print the available Wi-Fi access points: nmcli device wifi

Connect to the Wi-Fi network with a specified name and password: nmcli device wifi connect ssid password password

Print password and QR code for the current Wi-Fi network: nmcli device wifi show-password

nmcli monitor
Monitor changes to the NetworkManager connection status.

More information: https://developer.gnome.org/NetworkManager/stable/nmcli.html.

Start monitoring NetworkManager changes: nmcli monitor

notify-send
Uses the current desktop environment's notification system to create a notification.

Show a notification with the title "Test" and the content "This is a test": notify-send "Test" "This is a test"

Show a notification with a custom icon: notify-send -i icon.png "Test" "This is a test"

Show a notification for 5 seconds: notify-send -t 5000 "Test" "This is a test"

Show a notification with an app's icon: notify-send "Test" --icon=google-chrome

openfortivpn
A VPN client, for Fortinet's proprietary PPP+SSL VPN solution.

More information: https://github.com/adrienverge/openfortivpn.

Connect to a VPN with a username and password: openfortivpn --username=username --password=password

Connect to a VPN using a specific configuration file (defaults to /etc/openfortivpn/config): sudo openfortivpn --config=path/to/config

Connect to a VPN by specifying the host and port: openfortivpn host:port

Trust a given gateway by passing in its certificate's sha256 sum: openfortivpn --trusted-cert=sha256_sum

pacman4console
A text-based console game inspired by the original Pacman.

More information: https://github.com/YoctoForBeaglebone/pacman4console.

Start a game at Level 1: pacman4console

Start a game on a certain level (there are nine official levels): pacman4console --level=level_number

Start the pacman4console level editor, saving to a specified text file: pacman4consoleedit path/to/level_file

Play a custom level: pacman4console --level=path/to/level_file

pacman --database
Operate on the Arch Linux package database.Modify certain attributes of the installed packages.

More information: https://man.archlinux.org/man/pacman.8.

Display help: pacman --database --help

Mark a package as implicitly installed: sudo pacman --database --asdeps package_name

Mark a package as explicitly installed: sudo pacman --database --asexplicit package_name

Check that all the package dependencies are installed: pacman --database --check

Check the repositories to ensure all specified dependencies are available: pacman --database --check --check

Display only error messages: pacman --database --check --quiet

pacman --deptest
Check each dependency specified and return a list of dependencies that are not currently satisfied on the system.

More information: https://man.archlinux.org/man/pacman.8.

Print the package names of the dependencies that aren't installed: pacman --deptest package_name1 package_name2

Check if the installed package satisfies the given minimum version: pacman --deptest "bash>=5"

Check if a later version of a package is installed: pacman --deptest "bash>5"

Display help: pacman --deptest --help

pacman --files
Arch Linux package manager utility.See also pkgfile.

More information: https://man.archlinux.org/man/pacman.8.

Display help: pacman --files --help

Update the package database: sudo pacman --files --refresh

Find the package that owns a specific file: pacman --files filename

Find the package that owns a specific file, using a regular expression: pacman --files --regex 'regular_expression'

List only the package names: pacman --files --quiet filename

List the files owned by a specific package: pacman --files --list package_name

List only the absolute path to the files: pacman --query --list --quiet package_name

pacman-mirrors
Generate a pacman mirrorlist for Manjaro Linux.Every run of pacman-mirrors requires you to synchronize your database and update your system using sudo pacman -Syyu.

More information: https://wiki.manjaro.org/index.php?title=Pacman-mirrors.

Generate a mirrorlist using the default settings: sudo pacman-mirrors --fasttrack

Get the status of the current mirrors: pacman-mirrors --status

Display the current branch: pacman-mirrors --get-branch

Switch to a different branch: sudo pacman-mirrors --api --set-branch stable|unstable|testing

Generate a mirrorlist, only using mirrors in your country: sudo pacman-mirrors --geoip

pacman --query
Arch Linux package manager utility.

More information: https://man.archlinux.org/man/pacman.8.

List installed packages and versions: pacman --query

List only packages and versions that were explicitly installed: pacman --query --explicit

Find which package owns a file: pacman --query --owns filename

Display information about an installed package: pacman --query --info package_name

List files owned by a package: pacman --query --list package_name

List orphan packages (installed as dependencies but not required by any package): pacman --query --unrequired --deps --quiet

List installed packages not found in the repositories: pacman --query --foreign

List outdated packages: pacman --query --upgrades

pacman --remove
Arch Linux package manager utility.

More information: https://man.archlinux.org/man/pacman.8.

Display help for this subcommand: pacman --remove --help

Remove a package and its dependencies: sudo pacman --remove --recursive package_name

Remove a package and both its dependencies and configuration files: sudo pacman --remove --recursive --nosave package_name

Remove a package without prompting: sudo pacman --remove --noconfirm package_name

Remove orphan packages (installed as dependencies but not required by any package): sudo pacman --remove --recursive --nosave $(pacman --query --unrequired --deps --quiet)

Remove a package and all packages that depend on it: sudo pacman --remove --cascade package_name

List packages that would be affected (does not remove any packages): pacman --remove --print package_name

pacman --sync
Arch Linux package manager utility.

More information: https://man.archlinux.org/man/pacman.8.

Install a new package: sudo pacman --sync package_name

Synchronize and update all packages (add --downloadonly to download the packages and not update them): sudo pacman --sync --refresh --sysupgrade

Update all packages and install a new one without prompting: sudo pacman --sync --refresh --sysupgrade --noconfirm package_name

Search the package database for a regular expression or keyword: pacman --sync --search "search_pattern"

Display information about a package: pacman --sync --info package_name

Overwrite conflicting files during a package update: sudo pacman --sync --refresh --sysupgrade --overwrite path/to/file

Synchronize and update all packages, but ignore a specific package (can be used more than once): sudo pacman --sync --refresh --sysupgrade --ignore package_name

Remove not installed packages and unused repositories from the cache (use two --clean flags to clean all packages): sudo pacman --sync --clean

pacman --upgrade
Arch Linux package manager utility.

More information: https://man.archlinux.org/man/pacman.8.

Display help: pacman --upgrade --help

Install one or more packages from files: sudo pacman --upgrade path/to/package1.pkg.tar.zst path/to/package2.pkg.tar.zst

Install a package without prompting: sudo pacman --upgrade --noconfirm path/to/package.pkg.tar.zst

Overwrite conflicting files during a package installation: sudo pacman --upgrade --overwrite path/to/file path/to/package.pkg.tar.zst

Install a package, skipping the dependency version checks: sudo pacman --upgrade --nodeps path/to/package.pkg.tar.zst

List packages that would be affected (does not install any packages): pacman --query --print path/to/package.pkg.tar.zst

pasuspender
Temporarily suspends pulseaudio while another command is running to allow access to alsa.

Suspend PulseAudio while running jackd: pasuspender -- jackd -d alsa --device hw:0

rename
Rename multiple files.NOTE: this page refers to the command from the perl-rename Arch Linux package.

Rename files using a Perl Common Regular Expression (substitute 'foo' with 'bar' wherever found): rename 's/foo/bar/' *

Dry-run - display which renames would occur without performing them: rename -n 's/foo/bar/' *

Force renaming even if the operation would remove existing destination files: rename -f 's/foo/bar/' *

Convert filenames to lower case (use -f in case-insensitive filesystems to prevent "already exists" errors): rename 'y/A-Z/a-z/' *

Replace whitespace with underscores: rename 's/\s+/_/g' *

pkg-config
Provide the details of installed libraries for compiling applications.

More information: https://www.freedesktop.org/wiki/Software/pkg-config/.

Get the list of libraries and their dependencies: pkg-config --libs library1 library2 ...

Get the list of libraries, their dependencies, and proper cflags for gcc: pkg-config --cflags --libs library1 library2 ...

Compile your code with libgtk-3, libwebkit2gtk-4.0 and all their dependencies: c++ example.cpp $(pkg-config --cflags --libs gtk+-3.0 webkit2gtk-4.0) -o example

protontricks
A simple wrapper that does Winetricks things for Proton enabled games, requires Winetricks.

More information: https://github.com/Matoking/protontricks.

Show the protontricks help message: protontricks

Run the protontricks GUI: protontricks --gui

Run Winetricks for a specific game: protontricks appid winetricks_args

Run a command within a game's installation directory: protontricks -c command appid

protonvpn-cli connect
Official client to connect to ProtonVPN from the command-line.

More information: https://protonvpn.com/support/linux-vpn-setup/.

Connect to ProtonVPN interactively: protonvpn-cli connect

Connect to ProtonVPN using the fastest server available: protonvpn-cli connect --fastest

Connect to ProtonVPN using a specific server with a specific protocol: protonvpn-cli connect server_name --protocol udp|tcp

Connect to ProtonVPN using a random server with a specific protocol: protonvpn-cli connect --random --protocol udp|tcp

Connect to ProtonVPN using the fastest Tor-supporting server: protonvpn-cli connect --tor

Display help: protonvpn connect --help

protonvpn-cli
Official client for ProtonVPN service from the command-line.

More information: https://github.com/ProtonVPN/linux-cli.

Log in to the ProtonVPN account: protonvpn-cli login username

Start a kill switch upon connecting to ProtonVPN: protonvpn-cli killswitch --on

Connect to ProtonVPN interactively: protonvpn-cli connect

Display connection status: protonvpn-cli status

Block malware using ProtonVPN NetShield: protonvpn-cli netshield --malware

Disconnect from ProtonVPN: protonvpn-cli disconnect

Display the current ProtonVPN configuration: protonvpn-cli config --list

Display help for a subcommand: protonvpn-cli subcommand --help

pulseaudio
The PulseAudio sound system daemon and manager.

More information: https://www.freedesktop.org/wiki/Software/PulseAudio/.

Check if PulseAudio is running (a non-zero exit code means it is not running): pulseaudio --check

Start the PulseAudio daemon in the background: pulseaudio --start

Kill the running PulseAudio daemon: pulseaudio --kill

List available modules: pulseaudio --dump-modules

Load a module into the currently running daemon with the specified arguments: pulseaudio --load="module_name arguments"

quotacheck
Scan a filesystem for disk usage; create, check and repair quota files.It is best to run quota check with quotas turned off to prevent damage or loss to quota files.

Check quotas on all mounted non-NFS filesystems: sudo quotacheck --all

Force check even if quotas are enabled (this can cause damage or loss to quota files): sudo quotacheck --force mountpoint

Check quotas on a given filesystem in debug mode: sudo quotacheck --debug mountpoint

Check quotas on a given filesystem, displaying the progress: sudo quotacheck --verbose mountpoint

Check user quotas: sudo quotacheck --user user mountpoint

Check group quotas: sudo quotacheck --group group mountpoint

rankmirrors
Rank a list of Pacman mirrors by connection and opening speed.Writes the new mirrorlist to stdout.

More information: https://wiki.archlinux.org/index.php/mirrors.

Rank a mirror list: rankmirrors /etc/pacman.d/mirrorlist

Output only a given number of the top ranking servers: rankmirrors -n number /etc/pacman.d/mirrorlist

Be verbose when generating the mirrorlist: rankmirrors -v /etc/pacman.d/mirrorlist

Test only a specific URL: rankmirrors --url url

Output only the response times instead of a full mirrorlist: rankmirrors --times /etc/pacman.d/mirrorlist

rc-service
Locate and run OpenRC services with arguments.See also openrc.

Show a service's status: rc-service service_name status

Start a service: sudo rc-service service_name start

Stop a service: sudo rc-servie service_name stop

Restart a service: sudo rc-service service_name restart

Simulate running a service's custom command: sudo rc-service --dry-run service_name command_name

Actually run a service's custom command: sudo rc-service service_name command_name

Resolve the location of a service definition on disk: sudo rc-service --resolve service_name

run-mailcap
Run MailCap Programs.Run mailcap view, see, edit, compose, print - execute programs via entries in the mailcap file (or any of its aliases) will use the given action to process each mime-type/file.

Individual actions/programs on run-mailcap can be invoked with action flag: run-mailcap --action=ACTION [--option[=value]]

In simple language: run-mailcap --action=ACTION filename

Turn on extra information: run-mailcap --action=ACTION --debug filename

Ignore any "copiousoutput" directive and forward output to standard output: run-mailcap --action=ACTION --nopager filename

Display the found command without actually executing it: run-mailcap --action=ACTION --norun filename

rusnapshot
BTRFS snapshotting utility written in Rust.

More information: https://github.com/Edu4rdSHL/rusnapshot.

Create a snapshot using a config file: sudo rusnapshot --config path/to/config.toml --cr

List created snapshots: sudo rusnapshot -c path/to/config.toml --list

Delete a snapshot by ID or the name of the snapshot: sudo rusnapshot -c path/to/config.toml --del --id snapshot_id

Delete all hourly snapshots: sudo rusnapshot -c path/to/config.toml --list --keep 0 --clean --kind hourly

Create a read-write snapshot: sudo rusnapshot -c path/to/config.toml --cr --rw

Restore a snapshot: sudo rusnapshot -c path/to/config.toml --id snapshot_id --restore

scriptreplay
Replay a typescript created by the script command to the standard output.

Replay a typescript at the speed it was recorded: scriptreplay path/to/timing_file path/to/typescript

Replay a typescript at double the original speed: scriptreplay path/to/timingfile path/to/typescript 2

Replay a typescript at half the original speed: scriptreplay path/to/timingfile path/to/typescript 0.5

sensible-browser
Open the default browser.

Open a new window of the default browser: sensible-browser

Open a URL in the default browser: sensible-browser url

sensible-editor
Open the default editor.

Open a file in the default editor: sensible-editor file

Open a file in the default editor, with the cursor at the end of the file: sensible-editor + file

Open a file in the default editor, with the cursor at the beginning of line 10: sensible-editor +10 file

Open 3 files in vertically split editor windows at the same time: sensible-editor -O3 file_1 file_2 file_3

silentcast
Silent screencast creator. Saves in .mkv and animated GIF formats.

More information: https://github.com/colinkeenan/silentcast.

Launch silentcast: silentcast

Launch silentcast on a specific display: silentcast --display=display

snake4scores
Show the high scores from the snake4 game.

More information: https://manpages.debian.org/snake4/snake4.6.en.html.

Show the highscores: snake4scores

spectre-meltdown-checker
Spectre and Meltdown mitigation detection tool.

More information: https://manned.org/spectre-meltdown-checker.1.

Check the currently running kernel for Spectre or Meltdown: sudo spectre-meltdown-checker

Check the currently running kernel and show an explanation of the actions to take to mitigate a vulnerability: sudo spectre-meltdown-checker --explain

Check for specific variants (defaults to all): sudo spectre-meltdown-checker --variant 1|2|3|3a|4|l1tf|msbds|mfbds|mlpds|mdsum|taa|mcespc|srbds

Display output using a specific output format: sudo spectre-meltdown-checker --batch text|json|nrpe|prometheus|short

Don't use the /sys interface even if present: sudo spectre-meltdown-checker --no-sysfs

Check a non-running kernel: sudo spectre-meltdown-checker --kernel path/to/kernel_file

speedometer
Python script that shows a network traffic graph in the terminal.

More information: http://excess.org/speedometer.

Show graph for a specific interface: speedometer -r eth0 -t eth0

synoupgrade
Upgrade a Synology DiskStation Manager (DSM) from the command-line.

More information: https://www.synology.com/dsm.

Check if upgrades are available: sudo synoupgrade --check

Check for patches without upgrading the DSM version: sudo synoupgrade --check-smallupdate

Download the latest upgrade available (use --download-smallupdate for patches): sudo synoupgrade --download

Start the upgrade process: sudo synoupgrade --start

Upgrade to the latest version automatically: sudo synoupgrade --auto

Apply patches without upgrading the DSM version automatically: sudo synoupgrade --auto-smallupdate

Upgrade the DSM using a patch file (should be an absolute path): sudo synoupgrade --patch /path/to/file.pat

Display help: synoupgrade No tldr entry for syst-analyze

tcptraceroute
A traceroute implementation using TCP packets.

More information: https://github.com/mct/tcptraceroute.

Trace the route to a host: tcptraceroute host

Specify the destination port and packet length in bytes: tcptraceroute host destination_port packet_length

Specify the local source port and source address: tcptraceroute host -p source_port -s source_address

Set the first and maximum TTL: tcptraceroute host -f first_ttl -m max_ttl

Specify the wait time and number of queries per hop: tcptraceroute host -w wait_time -q number_of_queries

Specify the interface: tcptraceroute host -i interface

terminator
Arrange multiple GNOME terminals in one window.

More information: https://gnome-terminator.org/.

Start terminator window: terminator

Start with a fullscreen window: terminator -f

Split terminals horizontally: Ctrl + Shift + O

Split terminals vertically: Ctrl + Shift + E

Open new tab: Ctrl + Shift + T

timedatectl
Control the system time and date.

More information: https://manned.org/timedatectl.1.

Check the current system clock time: timedatectl

Set the local time of the system clock directly: timedatectl set-time "yyyy-MM-dd hh:mm:ss"

List available timezones: timedatectl list-timezones

Set the system timezone: timedatectl set-timezone timezone

Enable Network Time Protocol (NTP) synchronization: timedatectl set-ntp on

update-alternatives
A convenient tool for maintaining symbolic links to determine default commands.

More information: https://manned.org/update-alternatives.

Add a symbolic link: sudo update-alternatives --install path/to/symlink command_name path/to/command_binary priority

Configure a symbolic link for java: sudo update-alternatives --config java

Remove a symbolic link: sudo update-alternatives --remove java /opt/java/jdk1.8.0_102/bin/java

Display information about a specified command: update-alternatives --display java

Display all commands and their current selection: update-alternatives --get-selections

update-rc.d
Install and remove services which are System-V style init script links.Init scripts are in the /etc/init.d/.

More information: https://manned.org/update-rc.d.

Install a service: update-rc.d mysql defaults

Enable a service: update-rc.d mysql enable

Disable a service: update-rc.d mysql disable

Forcibly remove a service: update-rc.d -f mysql remove

uvcdynctrl
A libwebcam command-line tool to manage dynamic controls in uvcvideo.

List all available cameras: uvcdynctrl -l

Specify the device to use (defaults to video0): uvcdynctrl -d device_name

List available controls: uvcdynctrl -c

Set a new control value (for negative values, add -- before -value): uvcdynctrl -s control_name value

Get the current control value: uvcdynctrl -g control_name

Save the state of the current controls to a file: uvcdynctrl -W filename

Load the state of the controls from a file: uvcdynctrl -L filename

virt-manager
CLI launcher for virt-manager, a desktop user interface for managing KVM and Xen virtual machines and LXC containers.

More information: https://manpages.ubuntu.com/manpages/man1/virt-manager.1.html.

Launch virt-manager: virt-manager

Connect to a hypervisor: virt-manager --connect hypervisor_uri

Don't fork virt-manager process into background on startup: virt-manager --no-fork

Print debug output: virt-manager --debug

Open the "New VM" wizard: virt-manager --show-domain-creator

Show domain details window: virt-manager --show-domain-editor name|id|uuid

Show domain performance window: virt-manager --show-domain-performance name|id|uuid

Show connection details window: virt-manager --show-host-summary

vmware-checkvm
Checks to see if the current host is a VMware VM or not.

Return the current VMware software version (exit status determines whether the system is a VM or not): vmware-checkvm

Return the VMware hardware version: vmware-checkvm -h

winetricks
Manage Wine virtual Windows environments.

More information: https://wiki.winehq.org/Winetricks.

Start a graphical setup at the default Wine location: winetricks

Specify a custom Wine directory to run Winetricks in: WINEPREFIX=path/to/wine_directory winetricks

Install a Windows DLL or component to the default Wine directory: winetricks package

wpa_passphrase
Generate a WPA-PSK key from an ASCII passphrase for a given SSID.

Compute and display the WPA-PSK key for a given SSID reading the passphrase from stdin: wpa_passphrase SSID

Compute and display WPA-PSK key for a given SSID specifying the passphrase as an argument: wpa_passphrase SSID passphrase

x0vncserver
TigerVNC Server for X displays.

More information: https://tigervnc.org/doc/x0vncserver.html.

Start a VNC server using a passwordfile: x0vncserver -display :0 -passwordfile path/to/file

Start a VNC server using a specific port: x0vncserver -display :0 -rfbport port

xbacklight
Utility to adjust backlight brightness using the RandR extension.

More information: https://gitlab.freedesktop.org/xorg/app/xbacklight.

Get the current screen brightness as a percentage: xbacklight

Set the screen brightness to 40%: xbacklight -set 40

Increase current brightness by 25%: xbacklight -inc 25

Decrease current brightness by 75%: xbacklight -dec 75

Increase backlight to 100%, over 60 seconds (value given in ms), using 60 steps: xbacklight -set 100 -time 60000 -steps 60

xcursorgen
Create an X cursor file from a collection of PNGs.If --prefix is omitted, the image files must be located in the current working directory.

More information: https://manned.org/xcursorgen.1.

Create an X cursor file using a config file: xcursorgen path/to/config.cursor path/to/output_file

Create an X cursor file using a config file and specify the path to the image files: xcursorgen --prefix path/to/image_directory/ path/to/config.cursor path/to/output_file

Create an X cursor file using a config file and write the output to stdout: xcursorgen path/to/config.cursor

xfce4-screenshooter
The XFCE4 screenshot tool.

More information: https://docs.xfce.org/apps/xfce4-screenshooter/start.

Launch the screenshooter GUI: xfce4-screenshooter

Take a screenshot of the entire screen and launch the GUI to ask how to proceed: xfce4-screenshooter --fullscreen

Take a screenshot of the entire screen and save it in the specified directory: xfce4-screenshooter --fullscreen --save path/to/directory

Wait some time before taking the screenshot: xfce4-screenshooter --delay seconds

Take a screenshot of a region of the screen (select using the mouse): xfce4-screenshooter --region

Take a screenshot of the active window, and copy it to the clipboard: xfce4-screenshooter --window --clipboard

Take a screenshot of the active window, and open it with a chosen program: xfce4-screenshooter --window --open gimp

xfce4-terminal
The XFCE4 terminal emulator.

More information: https://docs.xfce.org/apps/xfce4-terminal/start.

Open a new terminal window: xfce4-terminal

Set the initial title: xfce4-terminal --initial-title "initial_title"

Open a new tab in the current terminal window: xfce4-terminal --tab

Execute a command in a new terminal window: xfce4-terminal --command "command_with_args"

Keep the terminal around after the executed command finishes executing: xfce4-terminal --command "command_with_args" --hold

Open multiple new tabs, executing a command in each: xfce4-terminal --tab --command "command_a" --tab --command "command_b"