Common
2to3 Automated Python 2 to 3 code conversion. More information: https://docs.python.org/3/library/2to3.html. Display the changes that would be performed without performing them (dry-run): 2to3 {{path/to/file.py}} Convert a Python 2 file to Python 3: 2to3 --write {{path/to/file.py}} Convert specific Python 2 language features to Python 3: 2to3 --write {{path/to/file.py}} --fix={{raw_input}} --fix={{print}} Convert all Python 2 language features except the specified ones to Python 3: 2to3 --write {{path/to/file.py}} --nofix={{has_key}} --nofix={{isinstance}} Display a list of all available language features that can be converted from Python 2 to Python 3: 2to3 --list-fixes
7z File archiver with a high compression ratio. More information: https://manned.org/7z. [a]dd a file or directory to a new or existing archive: 7z a {{path/to/archive.7z}} {{path/to/file_or_directory}} Encrypt an existing archive (including filenames): 7z a {{path/to/encrypted.7z}} -p{{password}} -mhe=on {{path/to/archive.7z}} E tract an archive preserving the original directory structure: 7z x {{path/to/archive.7z}} E tract an archive to a specific directory: 7z x {{path/to/archive.7z}} -o{{path/to/output}} E tract an archive to stdout: 7z x {{path/to/archive.
7za File archiver with a high compression ratio. Similar to 7z except that it supports fewer file types but is cross-platform. More information: https://manned.org/7za. [a]rchive a file or directory: 7za a {{path/to/archive.7z}} {{path/to/file_or_directory}} Encrypt an existing archive (including file names): 7za a {{path/to/encrypted.7z}} -p{{password}} -mhe={{on}} {{path/to/archive.7z}} E tract an archive preserving the original directory structure: 7za x {{path/to/archive.7z}} E tract an archive to a specific directory: 7za x {{path/to/archive.7z}} -o{{path/to/output}}
7zr File archiver with a high compression ratio. Similar to 7z except that it only supports .7z files. More information: https://manned.org/7zr. [a]rchive a file or directory: 7zr a {{path/to/archive.7z}} {{path/to/file_or_directory}} Encrypt an existing archive (including file names): 7zr a {{path/to/encrypted.7z}} -p{{password}} -mhe={{on}} {{path/to/archive.7z}} E tract an archive preserving the original directory structure: 7zr x {{path/to/archive.7z}} E tract an archive to a specific directory: 7zr x {{path/to/archive.7z}} -o{{path/to/output}} E tract an archive to stdout: 7zr x {{path/to/archive.
aapt Android Asset Packaging Tool. Compile and package an Android app’s resources. More information: https://elinux.org/Android_aapt. List files contained in an APK archive: aapt list {{path/to/app.apk}} Display an app’s metadata (version, permissions, etc.): aapt dump badging {{path/to/app.apk}} Create a new APK archive with files from the specified directory: aapt package -F {{path/to/app.apk}} {{path/to/directory}}
ab Apache HTTP server benchmarking tool. More information: https://httpd.apache.org/docs/current/programs/ab.html. Execute 100 HTTP GET requests to a given URL: ab -n {{100}} {{url}} Execute 100 HTTP GET requests, in concurrent batches of 10, to a URL: ab -n {{100}} -c {{10}} {{url}} Execute 100 HTTP POST requests to a URL, using a JSON payload from a file: ab -n {{100}} -T {{application/json}} -p {{path/to/file.json}} {{url}} Use HTTP [K]eep Alive, i.e. perform multiple requests within one HTTP session: ab -k {{url}}
abduco Terminal session manager. More information: http://www.brain-dump.org/projects/abduco/. List sessions: abduco Attach to a session, creating it if it doesn’t exist: abduco -A {{name}} {{bash}} Attach to a session with dvtm, creating it if it doesn’t exist: abduco -A {{name}} Detach from a session: Ctrl + \ Attach to a session in read-only mode: abduco -Ar {{name}}
ac Print statistics on how long users have been connected. More information: https://man.openbsd.org/ac. Print how long the current user has been connected in hours: ac Print how long users have been connected in hours: ac -p Print how long a particular user has been connected in hours: ac -p {{username}} Print how long a particular user has been connected in hours per day (with total): ac -dp {{username}}
ack A search tool like grep, optimized for developers. See also: rg, which is much faster. More information: https://beyondgrep.com/documentation. Search for files containing a string or regular expression in the current directory recursively: ack "{{search_pattern}}" Search for a case-insensitive pattern: ack --ignore-case "{{search_pattern}}" Search for lines matching a pattern, printing [o]nly the matched text and not the rest of the line: ack -o "{{search_pattern}}" Limit search to files of a specific type: ack --type={{ruby}} "{{search_pattern}}"
acme.sh Shell script implementing ACME client protocol, an alternative to certbot. See also acme.sh dns. More information: https://github.com/acmesh-official/acme.sh. Issue a certificate using webroot mode: acme.sh --issue --domain {{example.com}} --webroot {{/path/to/webroot}} Issue a certificate for multiple domains using standalone mode using port 80: acme.sh --issue --standalone --domain {{example.com}} --domain {{www.example.com}} Issue a certificate using standalone TLS mode using port 443: acme.sh --issue --alpn --domain {{example.com}} Issue a certificate using a working Nginx configuration: acme.
acme.sh –dns Use a DNS-01 challenge to issue a TLS certificate. More information: https://github.com/acmesh-official/acme.sh/wiki. Issue a certificate using an automatic DNS API mode: acme.sh --issue --dns {{gnd_gd}} --domain {{example.com}} Issue a wildcard certificate (denoted by an asterisk) using an automatic DNS API mode: acme.sh --issue --dns {{dns_namesilo}} --domain {{example.com}} --domain {{*.example.com}} Issue a certificate using a DNS alias mode: acme.sh --issue --dns {{dns_cf}} --domain {{example.com}} --challenge-alias {{alias-for-example-validation.com}} Issue a certificate while disabling automatic Cloudflare/Google DNS polling after the DNS record is added by specifying a custom wait time in seconds: acme.
act Execute GitHub Actions locally using Docker. More information: https://github.com/nektos/act. List the available actions: act -l Run the default event: act Run a specific event: act {{event_type}} Run a specific action: act -a {{action_id}} Do not actually run the actions (i.e. a dry run): act -n Show verbose logs: act -v Run a specific workflow: act push -W {{path/to/workflow}}
acyclic Make a directed graph acyclic by reversing some edges. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://graphviz.org/pdf/acyclic.1.pdf. Make a directed graph acyclic by reversing some edges: acyclic {{path/to/input.gv}} > {{path/to/output.gv}} Print if a graph is acyclic, has a cycle, or is undirected, producing no output graph: acyclic -v -n {{path/to/input.gv}} Display help for acyclic: acyclic -?
adb Android Debug Bridge: communicate with an Android emulator instance or connected Android devices. Some subcommands such as adb shell have their own usage documentation. More information: https://developer.android.com/studio/command-line/adb. Check whether the adb server process is running and start it: adb start-server Terminate the adb server process: adb kill-server Start a remote shell in the target emulator/device instance: adb shell Push an Android application to an emulator/device: adb install -r {{path/to/file.apk}}
adb install Android Debug Bridge Install: Push packages to an Android emulator instance or connected Android devices. More information: https://developer.android.com/studio/command-line/adb. Push an Android application to an emulator/device: adb install {{path/to/file.apk}} Push an Android application to a specific emulator/device (overrides $ANDROID_SERIAL): adb -s {{serial_number}} install {{path/to/file.apk}} Reinstall an existing app, keeping its data: adb install -r {{path/to/file.apk}} Push an Android application allowing version code downgrade (debuggable packages only): adb install -d {{path/to/file.
adb logcat Dump a log of system messages. More information: https://developer.android.com/studio/command-line/logcat. Display system logs: adb logcat Display lines that match a regular expression: adb logcat -e {{regular_expression}} Display logs for a tag in a specific mode ([V]erbose, [D]ebug, [I]nfo, [W]arning, [E]rror, [F]atal, [S]ilent), filtering other tags: adb logcat {{tag}}:{{mode}} *:S Display logs for React Native applications in [V]erbose mode [S]ilencing other tags: adb logcat ReactNative:V ReactNativeJS:V *:S Display logs for all tags with priority level [W]arning and higher: adb logcat *:W
adb reverse Android Debug Bridge Reverse: reverse socket connections from an Android emulator instance or connected Android devices. More information: https://developer.android.com/studio/command-line/adb. List all reverse socket connections from emulators and devices: adb reverse --list Reverse a TCP port from an emulator or device to localhost: adb reverse tcp:{{remote_port}} tcp:{{local_port}} Remove a reverse socket connections from an emulator or device: adb reverse --remove tcp:{{remote_port}} Remove all reverse socket connections from all emulators and devices: adb reverse --remove-all
adb shell Android Debug Bridge Shell: Run remote shell commands on an Android emulator instance or connected Android devices. More information: https://developer.android.com/studio/command-line/adb. Start a remote interactive shell on the emulator or device: adb shell Get all the properties from emulator or device: adb shell getprop Revert all runtime permissions to their default: adb shell pm reset-permissions Revoke a dangerous permission for an application: adb shell pm revoke {{package}} {{permission}} Trigger a key event: adb shell input keyevent {{keycode}}
AdGuardHome A network-wide software for blocking ads & tracking. More information: https://github.com/AdguardTeam/AdGuardHome. Run AdGuard Home: AdGuardHome Run AdGuard Home with a specific config: AdGuardHome --config {{path/to/AdGuardHome.yaml}} Set the work directory for data to be stored in: AdGuardHome --work-dir {{path/to/directory}} Install or uninstall AdGuard Home as a service: AdGuardHome --service {{install|uninstall}} Start the AdGuard Home service: AdGuardHome --service start Reload the configuration for the AdGuard Home service: AdGuardHome --service reload Stop or restart the AdGuard Home service: AdGuardHome --service {{stop|restart}}
adscript Compiler for Adscript files. More information: https://github.com/Amplus2/Adscript. Compile a file to an object file: adscript --output {{path/to/file.o}} {{path/to/input_file.adscript}} Compile and link a file to a standalone executable: adscript --executable --output {{path/to/file}} {{path/to/input_file.adscript}} Compile a file to LLVM IR instead of native machine code: adscript --llvm-ir --output {{path/to/file.ll}} {{path/to/input_file.adscript}} Cross-compile a file to an object file for a foreign CPU architecture or operating system: adscript --target-triple {{i386-linux-elf}} --output {{path/to/file.o}} {{path/to/input_file.adscript}}
afconvert Convert between AFF and raw file formats. More information: https://manned.org/afconvert.1. Use a specific extension (default: aff): afconvert -a {{extension}} {{path/to/input_file}} {{path/to/output_file1 path/to/output_file2 ...}} Use a specific compression level (default: 7): afconvert -X{{0..7}} {{path/to/input_file}} {{path/to/output_file1 path/to/output_file2 ...}}
ag The Silver Searcher. Like ack, but aims to be faster. More information: https://github.com/ggreer/the_silver_searcher. Find files containing “foo”, and print the line matches in context: ag {{foo}} Find files containing “foo” in a specific directory: ag {{foo}} {{path/to/directory}} Find files containing “foo”, but only list the filenames: ag -l {{foo}} Find files containing “FOO” case-insensitively, and print only the match, rather than the whole line: ag -i -o {{FOO}} Find “foo” in files with a name matching “bar”: ag {{foo}} -G {{bar}}
agate A simple server for the Gemini network protocol. More information: https://github.com/mbrubeck/agate. Run and generate a private key and certificate: agate --content {{path/to/content/}} --addr {{[::]:1965}} --addr {{0.0.0.0:1965}} --hostname {{example.com}} --lang {{en-US}} Run server: agate {{path/to/file}} Display help: agate -h
age A simple, modern and secure file encryption tool. See age-keygen for how to generate key pairs. More information: https://github.com/FiloSottile/age. Generate an encrypted file that can be decrypted with a passphrase: age --passphrase --output {{path/to/encrypted_file}} {{path/to/unencrypted_file}} Encrypt a file with one or more public keys entered as literals (repeat the --recipient flag to specify multiple public keys): age --recipient {{public_key}} --output {{path/to/encrypted_file}} {{path/to/unencrypted_file}} Encrypt a file to one or more recipients with their public keys specified in a file (one per line): age --recipients-file {{path/to/recipients_file}} --output {{path/to/encrypted_file}} {{path/to/unencrypted_file}}
age-keygen Generate age key pairs. See age for how to encrypt/decrypt files. More information: https://manned.org/age-keygen. Generate a key pair, save it to an unencrypted file and print the public key to stdout: age-keygen --output {{path/to/file}} Convert an identity to a recipient and print the public key to stdout: age-keygen -y {{path/to/file}}
aircrack-ng Crack WEP and WPA/WPA2 keys from handshake in captured packets. Part of Aircrack-ng network software suite. More information: https://www.aircrack-ng.org/doku.php?id=aircrack-ng. Crack key from capture file using [w]ordlist: aircrack-ng -w {{path/to/wordlist.txt}} {{path/to/capture.cap}} Crack key from capture file using [w]ordlist and the access point’s [e]ssid: aircrack-ng -w {{path/to/wordlist.txt}} -e {{essid}} {{path/to/capture.cap}} Crack key from capture file using [w]ordlist and the access point’s MAC address: aircrack-ng -w {{path/to/wordlist.txt}} --bssid {{mac}} {{path/to/capture.cap}}
airdecap-ng Decrypt a WEP, WPA or WPA2 encrypted capture file. Part of Aircrack-ng network software suite. More information: https://www.aircrack-ng.org/doku.php?id=airdecap-ng. Remove wireless headers from an open network capture file and use the access point’s MAC address to filter: airdecap-ng -b {{ap_mac}} {{path/to/capture.cap}} Decrypt a WEP encrypted capture file using the key in hex format: airdecap-ng -w {{hex_key}} {{path/to/capture.cap}} Decrypt a WPA/WPA2 encrypted capture file using the access point’s [e]ssid and [p]assword: airdecap-ng -e {{essid}} -p {{password}} {{path/to/capture.
aireplay-ng Inject packets into a wireless network. Part of aircrack-ng. More information: https://www.aircrack-ng.org/doku.php?id=aireplay-ng. Send a specific number of disassociate packets given an access point’s MAC address, a client’s MAC address and an interface: sudo aireplay-ng --deauth {{count}} --bssid {{ap_mac}} --dmac {{client_mac}} {{interface}}
airmon-ng Activate monitor mode on wireless network devices. Part of aircrack-ng. More information: https://www.aircrack-ng.org/doku.php?id=airmon-ng. List wireless devices and their statuses: sudo airmon-ng Turn on monitor mode for a specific device: sudo airmon-ng start {{wlan0}} Kill disturbing processes that use wireless devices: sudo airmon-ng check kill Turn off monitor mode for a specific network interface: sudo airmon-ng stop {{wlan0mon}}
airodump-ng Capture packets and display information about wireless networks. Part of aircrack-ng. More information: https://www.aircrack-ng.org/doku.php?id=airodump-ng. Capture packets and display information about a wireless network: sudo airodump-ng {{interface}} Capture packets and display information about a wireless network given the MAC address and channel, and save the output to a file: sudo airodump-ng --channel {{channel}} --write {{path/to/file}} --bssid {{mac}} {{interface}}
airpaste Share messages and files on the same network using mDNS. More information: https://github.com/mafintosh/airpaste. Wait for a message and display it when received: airpaste Send text: echo {{text}} | airpaste Send a file: airpaste < {{path/to/file}} Receive a file: airpaste > {{path/to/file}} Create or join a channel: airpaste {{channel_name}}
airshare Transfer data between two machines in a local network. More information: https://airshare.rtfd.io/en/latest/cli.html. Share files or directories: airshare {{code}} {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} Receive a file: airshare {{code}} Host a receiving server (use this to be able to upload files using the web interface): airshare --upload {{code}} Send files or directories to a receiving server: airshare --upload {{code}} {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} Send files whose paths have been copied to the clipboard: airshare --file-path {{code}}
ajson Executes JSONPath on JSON objects. More information: https://github.com/spyzhov/ajson. Read JSON from a file and execute a specified JSONPath expression: ajson '{{$..json[?(@.path)]}}' {{path/to/file.json}} Read JSON from stdin and execute a specified JSONPath expression: cat {{path/to/file.json}} | ajson '{{$..json[?(@.path)]}}' Read JSON from a URL and evaluate a specified JSONPath expression: ajson '{{avg($..price)}}' '{{https://example.com/api/}}' Read some simple JSON and calculate a value: echo '{{3}}' | ajson '{{2 * pi * $}}'
alacritty Cross-platform, GPU-accelerated terminal emulator. More information: https://github.com/alacritty/alacritty. Open a new Alacritty window: alacritty Run in a specific directory: alacritty --working-directory {{path/to/directory}} Run a command in a new Alacritty window: alacritty -e {{command}} Specify alternative configuration file (defaults to $XDG_CONFIG_HOME/alacritty/alacritty.yml): alacritty --config-file {{path/to/config.yml}} Run with live config reload enabled (can also be enabled by default in alacritty.yml): alacritty --live-config-reload --config-file {{path/to/config.yml}}
alex A tool that catches insensitive, inconsiderate writing. It helps you find gender favouring, polarising, race related, religion inconsiderate, or other unequal phrasing in text. More information: https://github.com/get-alex/alex. Analyze text from stdin: echo {{His network looks good}} | alex --stdin Analyze all files in the current directory: alex Analyze a specific file: alex {{textfile.md}} Analyze all Markdown files except example.md: alex *.md !{{example.md}}
alias Creates aliases – words that are replaced by a command string. Aliases expire with the current shell session unless defined in the shell’s configuration file, e.g. ~/.bashrc. More information: https://tldp.org/LDP/abs/html/aliases.html. List all aliases: alias Create a generic alias: alias {{word}}="{{command}}" View the command associated to a given alias: alias {{word}} Remove an aliased command: unalias {{word}} Turn rm into an interactive command: alias {{rm}}="{{rm --interactive}}" Create la as a shortcut for ls --all: alias {{la}}="{{ls --all}}"
amass In-depth Attack Surface Mapping and Asset Discovery tool. Some subcommands such as amass db have their own usage documentation. More information: https://github.com/OWASP/Amass. Execute an Amass subcommand: amass {{subcommand}} Show general help: amass -help Show help on an Amass subcommand (like intel, enum, etc.): amass -help {{subcommand}} Display version: amass -version
amass db Interact with an Amass database. More information: https://github.com/OWASP/Amass/blob/master/doc/user_guide.md#the-db-subcommand. List all performed enumerations in the database: amass db -dir {{path/to/database_directory}} -list Show results for a specified enumeration index and domain name: amass db -dir {{path/to/database_directory}} -d {{domain_name}} -enum {{index_from_list}} -show List all found subdomains of a domain within an enumeration: amass db -dir {{path/to/database_directory}} -d {{domain_name}} -enum {{index_from_list}} -names Show a summary of the found subdomains within an enumeration: amass db -dir {{path/to/database_directory}} -d {{domain_name}} -enum {{index_from_list}} -summary
amass enum Find subdomains of a domain. More information: https://github.com/OWASP/Amass/blob/master/doc/user_guide.md#the-enum-subcommand. Passively find subdomains of a domain: amass enum -passive -d {{domain_name}} Find subdomains of a domain and actively verify them attempting to resolve the found subdomains: amass enum -active -d {{domain_name}} -p {{80,443,8080}} Do a brute force search for subdomains: amass enum -brute -d {{domain_name}} Save the results to a text file: amass enum -o {{output_file}} -d {{domain_name}} Save the results to a database: amass enum -o {{output_file}} -dir {{path/to/database_directory}}
amass intel Collect open source intel on an organisation like root domains and ASNs. More information: https://github.com/OWASP/Amass/blob/master/doc/user_guide.md#the-intel-subcommand. Find root domains in an IP address range: amass intel -addr {{192.168.0.1-254}} Use active recon methods: amass intel -active -addr {{192.168.0.1-254}} Find root domains related to a domain: amass intel -whois -d {{domain_name}} Find ASNs belonging to an organisation: amass intel -org {{organisation_name}} Find root domains belonging to a given Autonomous System Number: amass intel -asn {{asn}}
amass track Track differences between enumerations of the same domain. More information: https://github.com/OWASP/Amass/blob/master/doc/user_guide.md#the-track-subcommand. Show the difference between the last two enumerations of the specified domain: amass track -dir {{path/to/database_directory}} -d {{domain_name}} -last 2 Show the difference between a certain point in time and the last enumeration: amass track -dir {{path/to/database_directory}} -d {{domain_name}} -since {{01/02 15:04:05 2006 MST}}
amass viz Visualize gathered information in a network graph. More information: https://github.com/OWASP/Amass/blob/master/doc/user_guide.md#the-viz-subcommand. Generate a D3.js visualization based on database data: amass viz -d3 -dir {{path/to/database_directory}} Generate a DOT file based on database data: amass viz -dot -dir {{path/to/database_directory}} Generate a Gephi Graph Exchange XML Format (GEXF) file based on database data: amass viz -gexf -dir {{path/to/database_directory}} Generate a Graphistry JSON file based on database data: amass viz -graphistry -dir {{path/to/database_directory}}
androguard Reverse engineering tool for Android applications. Written in Python. More information: https://github.com/androguard/androguard. Display Android app manifest: androguard axml {{path/to/app.apk}} Display app metadata (version and app ID): androguard apkid {{path/to/app.apk}} Decompile Java code from an app: androguard decompile {{path/to/app.apk}} --output {{path/to/directory}}
ani-cli A cli to browse and watch anime. More information: https://github.com/pystardust/ani-cli. Search anime by name: ani-cli "{{anime_name}}" Download episode: ani-cli -d "{{anime_name}}" Use VLC as the media player: ani-cli -v "{{anime_name}}" Specify episode to watch: ani-cli -a {{episode_number}} "{{anime_name}}" Continue watching anime from history: ani-cli -c Update ani-cli: ani-cli -U
anki Powerful, intelligent flashcard program. More information: https://docs.ankiweb.net. Launch anki: anki Launch anki with a specific profile: anki -p {{profile_name}} Launch anki in a specific language: anki -l {{language}} Launch anki from a specific directory instead of the default (~/Anki): anki -b {{path/to/directory}}
ansible Manage groups of computers remotely over SSH. (use the /etc/ansible/hosts file to add new groups/hosts). Some subcommands such as ansible galaxy have their own usage documentation. More information: https://www.ansible.com/. List hosts belonging to a group: ansible {{group}} --list-hosts Ping a group of hosts by invoking the ping module: ansible {{group}} -m ping Display facts about a group of hosts by invoking the setup module: ansible {{group}} -m setup Execute a command on a group of hosts by invoking command module with arguments: ansible {{group}} -m command -a '{{my_command}}'
ansible-doc Display information on modules installed in Ansible libraries. Display a terse listing of plugins and their short descriptions. More information: https://docs.ansible.com/ansible/latest/cli/ansible-doc.html. List available action plugins (modules): ansible-doc --list List available plugins of a specific type: ansible-doc --type {{become|cache|callback|cliconf|connection|...}} --list Show information about a specific action plugin (module): ansible-doc {{plugin_name}} Show information about a plugin with a specific type: ansible-doc --type {{become|cache|callback|cliconf|connection|...}} {{plugin_name}} Show the playbook snippet for action plugin (modules): ansible-doc --snippet {{plugin_name}}
ansible-galaxy Create and manage Ansible roles. More information: https://docs.ansible.com/ansible/latest/cli/ansible-galaxy.html. Install a role: ansible-galaxy install {{username}}.{{role_name}} Remove a role: ansible-galaxy remove {{username}}.{{role_name}} List installed roles: ansible-galaxy list Search for a given role: ansible-galaxy search {{role_name}} Create a new role: ansible-galaxy init {{role_name}} Get information about a user role: ansible-galaxy role info {{username}}.{{role_name}} Get information about a collection: ansible-galaxy collection info {{username}}.{{collection_name}}
ansible-inventory Display or dump an Ansible inventory. See also: ansible. More information: https://docs.ansible.com/ansible/latest/cli/ansible-inventory.html. Display the default inventory: ansible-inventory --list Display a custom inventory: ansbile-inventory --list --inventory {{path/to/file_or_script_or_directory}} Display the default inventory in YAML: ansible-inventory --list --yaml Dump the default inventory to a file: ansible-inventory --list --output {{path/to/file}}
ansible-playbook Execute tasks defined in playbook on remote machines over SSH. More information: https://docs.ansible.com/ansible/latest/cli/ansible-playbook.html. Run tasks in playbook: ansible-playbook {{playbook}} Run tasks in playbook with custom host inventory: ansible-playbook {{playbook}} -i {{inventory_file}} Run tasks in playbook with extra variables defined via the command-line: ansible-playbook {{playbook}} -e "{{variable1}}={{value1}} {{variable2}}={{value2}}" Run tasks in playbook with extra variables defined in a JSON file: ansible-playbook {{playbook}} -e "@{{variables.json}}" Run tasks in playbook for the given tags: ansible-playbook {{playbook}} --tags {{tag1,tag2}}
ansible-pull Pull ansible playbooks from a VCS repo and executes them for the local host. More information: https://docs.ansible.com/ansible/latest/cli/ansible-pull.html. Pull a playbook from a VCS and execute a default local.yml playbook: ansible-pull -U {{repository_url}} Pull a playbook from a VCS and execute a specific playbook: ansible-pull -U {{repository_url}} {{playbook}} Pull a playbook from a VCS at a specific branch and execute a specific playbook: ansible-pull -U {{repository_url}} -C {{branch}} {{playbook}} Pull a playbook from a VCS, specify hosts file and execute a specific playbook: ansible-pull -U {{repository_url}} -i {{hosts_file}} {{playbook}}
ansible-vault Encrypts & decrypts values, data structures and files within Ansible projects. More information: https://docs.ansible.com/ansible/latest/user_guide/vault.html#id17. Create a new encrypted vault file with a prompt for a password: ansible-vault create {{vault_file}} Create a new encrypted vault file using a vault key file to encrypt it: ansible-vault create --vault-password-file={{password_file}} {{vault_file}} Encrypt an existing file using an optional password file: ansible-vault encrypt --vault-password-file={{password_file}} {{vault_file}} Encrypt a string using Ansible’s encrypted string format, displaying interactive prompts: ansible-vault encrypt_string
ansiweather A shell script for displaying the current weather conditions in your terminal. More information: https://github.com/fcambus/ansiweather. Display a forecast using metric units for the next five days for Rzeszow, Poland: ansiweather -u {{metric}} -f {{5}} -l {{Rzeszow,PL}} Display a forecast showing symbols and daylight data for your current location: ansiweather -s {{true}} -d {{true}} Display a forecast showing wind and humidity data for your current location: ansiweather -w {{true}} -h {{true}}
ant Apache Ant. Tool for building and managing Java-based projects. More information: https://ant.apache.org. Build a project with default build file build.xml: ant Build a project using build file other than build.xml: ant -f {{buildfile.xml}} Print information on possible targets for this project: ant -p Print debugging information: ant -d Execute all targets that do not depend on fail target(s): ant -k
antibody “The fastest” shell plugin manager. More information: https://getantibody.github.io. Bundle all plugins for static loading: antibody bundle < {{~/.zsh_plugins.txt}} > {{~/.zsh_plugins.sh}} Update all bundles: antibody update List all installed plugins: antibody list
apg Creates arbitrarily complex random passwords. More information: https://manned.org/apg. Create random passwords (default password length is 8): apg Create a password with at least 1 symbol (S), 1 number (N), 1 uppercase (C), 1 lowercase (L): apg -M SNCL Create a password with 16 characters: apg -m {{16}} Create a password with maximum length of 16: apg -x {{16}} Create a password that doesn’t appear in a dictionary (the dictionary file has to be provided): apg -r {{path/to/dictionary_file}}
apktool Reverse engineer APK files. More information: https://ibotpeaches.github.io/Apktool/. Decode an APK file: apktool d {{path/to/file.apk}} Build an APK file from a directory: apktool b {{path/to/directory}} Install and store a framework: apktool if {{path/to/framework.apk}}
apm Atom editor Package Manager. See atom. More information: https://github.com/atom/apm. Install a package from http://atom.io/packages or a theme from http://atom.io/themes: apm install {{package}} Remove a package/theme: apm remove {{package}} Upgrade a package/theme: apm upgrade {{package}}
apropos Search the manual pages for names and descriptions. More information: https://manned.org/apropos. Search for a keyword using a regular expression: apropos {{regular_expression}} Search without restricting the output to the terminal width: apropos -l {{regular_expression}} Search for pages that contain all the expressions given: apropos {{regular_expression_1}} -a {{regular_expression_2}} -a {{regular_expression_3}}
ar Create, modify, and extract from Unix archives. Typically used for static libraries (.a) and Debian packages (.deb). See also: tar. More information: https://manned.org/ar. E tract all members from an archive: ar x {{path/to/file.a}} Lis[t] contents in a specific archive: ar t {{path/to/file.ar}} [r]eplace or add specific files to an archive: ar r {{path/to/file.deb}} {{path/to/debian-binary path/to/control.tar.gz path/to/data.tar.xz ...}} In[s]ert an object file index (equivalent to using ranlib): ar s {{path/to/file.a}}
arc Arcanist: A CLI for Phabricator. More information: https://secure.phabricator.com/book/phabricator/article/arcanist/. Send the changes to Differential for review: arc diff Show pending revision information: arc list Update Git commit messages after review: arc amend Push Git changes: arc land
arch Display the name of the system architecture. See also uname. More information: https://www.gnu.org/software/coreutils/arch. Display the system’s architecture: arch
arduino Arduino Studio - Integrated Development Environment for the Arduino platform. More information: https://github.com/arduino/Arduino/blob/master/build/shared/manpage.adoc. Build a sketch: arduino --verify {{path/to/file.ino}} Build and upload a sketch: arduino --upload {{path/to/file.ino}} Build and upload a sketch to an Arduino Nano with an Atmega328p CPU, connected on port /dev/ttyACM0: arduino --board {{arduino:avr:nano:cpu=atmega328p}} --port {{/dev/ttyACM0}} --upload {{path/to/file.ino}} Set the preference name to a given value: arduino --pref {{name}}={{value}} Build a sketch, put the build results in the build directory, and reuse any previous build results in that directory: arduino --pref build.
arduino-builder Compile arduino sketches. DEPRECATION WARNING: This tool is being phased out in favor of arduino. More information: https://github.com/arduino/arduino-builder. Compile a sketch: arduino-builder -compile {{path/to/sketch.ino}} Specify the debug level (default: 5): arduino-builder -debug-level {{1..10}} Specify a custom build directory: arduino-builder -build-path {{path/to/build_directory}} Use a build option file, instead of specifying --hardware, --tools, etc. manually every time: arduino-builder -build-options-file {{path/to/build.options.json}} Enable verbose mode: arduino-builder -verbose {{true}}
argocd Command-line interface to control a Argo CD server. Some subcommands such as argocd app have their own usage documentation. More information: https://argo-cd.readthedocs.io/en/stable/user-guide/commands/argocd/. Login to Argo CD server: argocd login --insecure --username {{user}} --password {{password}} {{argocd_server:port}} List applications: argocd app list
argocd app Command-line interface to manage applications by Argo CD. More information: https://argo-cd.readthedocs.io/en/stable/user-guide/commands/argocd_app/. List applications: argocd app list --output {{json|yaml|wide}} Get application details: argocd app get {{app_name}} --output {{json|yaml|wide}} Deploy application internally (to the same cluster that Argo CD is running in): argocd app create {{app_name}} --repo {{git_repo_url}} --path {{path/to/repo}} --dest-server https://kubernetes.default.svc --dest-namespace {{ns}} Delete an application: argocd app delete {{app_name}} Enable application auto-sync: argocd app set {{app_name}} --sync-policy auto --auto-prune --self-heal
argon2 Calculate Argon2 cryptographic hashes. More information: https://github.com/P-H-C/phc-winner-argon2#command-line-utility. Calculate a hash with a password and a salt with the default parameters: echo "{{password}}" | argon2 "{{salt_text}}" Calculate a hash with the specified algorithm: echo "{{password}}" | argon2 "{{salt_text}}" -{{d|i|id}} Display the output hash without additional information: echo "{{password}}" | argon2 "{{salt_text}}" -e Calculate a hash with given iteration [t]imes, [m]emory usage, and [p]arallelism parameters: echo "{{password}}" | argon2 "{{salt_text}}" -t {{5}} -m {{20}} -p {{7}}
aria2 This command is an alias of aria2c. View documentation for the updated command: tldr aria2c
aria2c Fast download utility. Supports HTTP(S), FTP, SFTP, BitTorrent, and Metalink. More information: https://aria2.github.io. Download a specific URI to a file: aria2c "{{url}}" Download a file from a URI with a specific output name: aria2c --out={{path/to/file}} "{{url}}" Download multiple different files in parallel: aria2c --force-sequential {{false}} "{{url1 url2 ...}}" Download from multiple sources with each URI pointing to the same file: aria2c "{{url1 url2 ...}}" Download the URIs listed in a file with a specific number of parallel downloads: aria2c --input-file={{path/to/file}} --max-concurrent-downloads={{number_of_downloads}}
arp Show and manipulate your system’s ARP cache. More information: https://manned.org/arp. Show the current ARP table: arp -a Delete a specific entry: arp -d {{address}} Create an entry in the ARP table: arp -s {{address}} {{mac_address}}
arp-scan Send ARP packets to hosts (specified as IP addresses or hostnames) to scan the local network. More information: https://github.com/royhills/arp-scan. Scan the current local network: arp-scan --localnet Scan an IP network with a custom bitmask: arp-scan {{192.168.1.1}}/{{24}} Scan an IP network within a custom range: arp-scan {{127.0.0.0}}-{{127.0.0.31}} Scan an IP network with a custom net mask: arp-scan {{10.0.0.0}}:{{255.255.255.0}}
arping Discover and probe hosts in a network using the ARP protocol. Useful for MAC address discovery. More information: https://github.com/ThomasHabets/arping. Ping a host by ARP request packets: arping {{host_ip}} Ping a host on a specific interface: arping -I {{interface}} {{host_ip}} Ping a host and stop at the first reply: arping -f {{host_ip}} Ping a host a specific number of times: arping -c {{count}} {{host_ip}} Broadcast ARP request packets to update neighbours’ ARP caches: arping -U {{ip_to_broadcast}}
asar A file archiver for the Electron platform. More information: https://github.com/electron/asar. Archive a file or directory: asar pack {{path/to/input_file_or_directory}} {{path/to/output_archive.asar}} Extract an archive: asar extract {{path/to/archive.asar}} Extract a specific file from an archive: asar extract-file {{path/to/archive.asar}} {{file}} List the contents of an archive file: asar list {{path/to/archive.asar}}
asciidoctor A processor that converts AsciiDoc files to a publishable format. More information: https://docs.asciidoctor.org. Convert a specific .adoc file to HTML (the default output format): asciidoctor {{path/to/file.adoc}} Convert a specific .adoc file to HTML and link a CSS stylesheet: asciidoctor -a stylesheet={{path/to/stylesheet.css}} {{path/to/file.adoc}} Convert a specific .adoc file to embeddable HTML, removing everything except the body: asciidoctor --embedded {{path/to/file.adoc}} Convert a specific .adoc file to a PDF using the asciidoctor-pdf library: asciidoctor --backend={{pdf}} --require={{asciidoctor-pdf}} {{path/to/file.
asciinema Record and replay terminal sessions, and optionally share them on asciinema.org. More information: https://asciinema.org/docs/usage. Associate the local install of asciinema with an asciinema.org account: asciinema auth Make a new recording (once finished, user will be prompted to upload it or save it locally): asciinema rec Make a new recording and save it to a local file: asciinema rec {{path/to/file}}.cast Replay a terminal recording from a local file: asciinema play {{path/to/file}}.
asdf Command-line interface for managing versions of different packages. More information: https://asdf-vm.com. List all available plugins: asdf plugin list all Install a plugin: asdf plugin add {{name}} List all available versions for a package: asdf list all {{name}} Install a specific version of a package: asdf install {{name}} {{version}} Set global version for a package: asdf global {{name}} {{version}} Set local version for a package: asdf local {{name}} {{version}}
assimp Command-line client for the Open Asset Import Library. Supports loading of 40+ 3D file formats, and exporting to several popular 3D formats. More information: https://assimp-docs.readthedocs.io/. List all supported import formats: assimp listext List all supported export formats: assimp listexport Convert a file to one of the supported output formats, using the default parameters: assimp export {{input_file.stl}} {{output_file.obj}} Convert a file using custom parameters (the dox_cmd.h file in assimp’s source code lists available parameters): assimp export {{input_file.
astronomer Tool that detects illegitimate stars from bot accounts on GitHub projects. More information: https://github.com/Ullaakut/astronomer. Scan a repository: astronomer {{tldr-pages/tldr-node-client}} Scan the maximum amount of stars in the repository: astronomer {{tldr-pages/tldr-node-client}} --stars {{50}} Scan a repository including comparative reports: astronomer {{tldr-pages/tldr-node-client}} --verbose
astyle Source code indenter, formatter, and beautifier for the C, C++, C# and Java programming languages. Upon running, a copy of the original file is created with an “.orig” appended to the original file name. More information: http://astyle.sourceforge.net. Apply the default style of 4 spaces per indent and no formatting changes: astyle {{source_file}} Apply the Java style with attached braces: astyle --style=java {{path/to/file}} Apply the allman style with broken braces: astyle --style=allman {{path/to/file}}
at Execute commands once at a later time. Service atd (or atrun) should be running for the actual executions. More information: https://manned.org/at. Execute commands from stdin in 5 minutes (press Ctrl + D when done): at now + 5 minutes Execute a command from stdin at 10:00 AM today: echo "{{./make_db_backup.sh}}" | at 1000 Execute commands from a given file next Tuesday: at -f {{path/to/file}} 9:30 PM Tue
atom A cross-platform pluggable text editor. Plugins are managed by apm. More information: https://atom.io/. Open a file or directory: atom {{path/to/file_or_directory}} Open a file or directory in a new window: atom -n {{path/to/file_or_directory}} Open a file or directory in an existing window: atom --add {{path/to/file_or_directory}} Open Atom in safe mode (does not load any additional packages): atom --safe Prevent Atom from forking into the background, keeping Atom attached to the terminal: atom --foreground
atoum A simple, modern and intuitive unit testing framework for PHP. More information: http://atoum.org. Initialize a configuration file: atoum --init Run all tests: atoum Run tests using the specified configuration file: atoum -c {{path/to/file}} Run a specific test file: atoum -f {{path/to/file}} Run a specific directory of tests: atoum -d {{path/to/directory}} Run all tests under a specific namespace: atoum -ns {{namespace}} Run all tests with a specific tag: atoum -t {{tag}}
atq Show jobs scheduled by at or batch commands. More information: https://manned.org/atq. Show the current user’s scheduled jobs: atq Show jobs from queue named ‘a’ (queues have single-character names): atq -q {{a}} Show jobs of all users (run as superuser): sudo atq
atrm Remove jobs scheduled by at or batch commands. To find job numbers use atq. More information: https://manned.org/atrm. Remove job number 10: atrm {{10}} Remove many jobs, separated by spaces: atrm {{15}} {{17}} {{22}}
atuin Store your shell history in a searchable database. Optionally sync your encrypted history between machines. More information: https://atuin.sh/docs/overview/introduction/. Install atuin into your shell: eval "$(atuin init {{bash|zsh|fish}})" Import history from the shell default history file: atuin import auto Search shell history for a specific command: atuin search {{command}} Register an account on the default sync server: atuin register -u {{username}} -e {{email}} -p {{password}} Login to the default sync server: atuin login -u {{username}} -p {{password}}
audacious An open-source audio player. More information: https://audacious-media-player.org. Launch the program: audacious Enqueue a specific directory of audio files: audacious --enqueue {{path/to/directory}} Start or stop playback: audacious --play-pause Skip forwards or backwards in the playlist: audacious --{{fwd|rew}} Stop playback: audacious --stop Start a headless version: audacious --headless Exit as soon as playback stops or there is nothing to playback: audacious --quit-after-play
auditd This responds to requests from the audit utility and notifications from the kernel. It should not be invoked manually. More information: https://manned.org/auditd. Start the daemon: auditd Start the daemon in debug mode: auditd -d Start the daemon on-demand from launchd: auditd -l
autoconf Generate configuration scripts to automatically configure software source code packages. More information: https://www.gnu.org/software/autoconf. Generate a configuration script from configure.ac (if present) or configure.in and save this script to configure: autoconf Generate a configuration script from the specified template; output to stdout: autoconf {{template-file}} Generate a configuration script from the specified template (even if the input file has not changed) and write the output to a file: autoconf --force --output={{outfile}} {{template-file}}
autoflake A tool to remove unused imports and variables from Python code. More information: https://github.com/myint/autoflake. Remove unused variables from a single file and display the diff: autoflake --remove-unused-variables {{path/to/file.py}} Remove unused imports from multiple files and display the diffs: autoflake --remove-all-unused-imports {{path/to/file1.py path/to/file2.py ...}} Remove unused variables from a file, overwriting the file: autoflake --remove-unused-variables --in-place {{path/to/file.py}} Remove unused variables recursively from all files in a directory, overwriting each file: autoflake --remove-unused-variables --in-place --recursive {{path/to/directory}}
autojump Quickly jump among the directories you visit the most. Aliases like j or jc are provided for even less typing. More information: https://github.com/wting/autojump. Jump to a directory that contains the given pattern: j {{pattern}} Jump to a sub-directory (child) of the current directory that contains the given pattern: jc {{pattern}} Open a directory that contains the given pattern in the operating system file manager: jo {{pattern}} Remove non-existing directories from the autojump database: j --purge
autopep8 Format Python code according to the PEP 8 style guide. More information: https://github.com/hhatto/autopep8. Format a file to stdout, with a custom maximum line length: autopep8 {{path/to/file.py}} --max-line-length {{length}} Format a file, displaying a diff of the changes: autopep8 --diff {{path/to/file}} Format a file in-place and save the changes: autopep8 --in-place {{path/to/file.py}} Recursively format all files in a directory in-place and save changes: autopep8 --in-place --recursive {{path/to/directory}}
autossh Run, monitor and restart SSH connections. Auto-reconnects to keep port forwarding tunnels up. Accepts all ssh flags. More information: https://www.harding.motd.ca/autossh. Start an SSH session, restarting when a monitoring port fails to return data: autossh -M {{monitor_port}} "{{ssh_command}}" Forward a local port to a remote one, restarting when necessary: autossh -M {{monitor_port}} -L {{local_port}}:localhost:{{remote_port}} {{user}}@{{host}} Fork autossh into the background before executing ssh and don’t open a remote shell: autossh -f -M {{monitor_port}} -N "{{ssh_command}}"
avo The official command-line interface for Avo. More information: https://www.avo.app/docs/implementation/cli. Initialize a workspace in the current directory: avo init Log into the Avo platform: avo login Switch to an existing Avo branch: avo checkout {{branch_name}} Pull analytics wrappers for the current path: avo pull Display the status of the Avo implementation: avo status Resolve Git conflicts in Avo files: avo conflict Open the current Avo workspace in the default web browser: avo edit
avrdude Driver program for Atmel AVR microcontrollers programming. More information: https://www.nongnu.org/avrdude/. Read AVR microcontroller: avrdude -p {{AVR_device}} -c {{programmer}} -U flash:r:{{file.hex}}:i Write AVR microcontroller: avrdude -p {{AVR_device}} -c {{programmer}} -U flash:w:{{file.hex}} List available AVR devices: avrdude -p \? List available AVR programmers: avrdude -c \?
awk A versatile programming language for working on files. More information: https://github.com/onetrueawk/awk. Print the fifth column (a.k.a. field) in a space-separated file: awk '{print $5}' {{path/to/file}} Print the second column of the lines containing “foo” in a space-separated file: awk '/{{foo}}/ {print $2}' {{path/to/file}} Print the last column of each line in a file, using a comma (instead of space) as a field separator: awk -F ',' '{print $NF}' {{path/to/file}}
aws The official CLI tool for Amazon Web Services. Some subcommands such as aws s3 have their own usage documentation. More information: https://aws.amazon.com/cli. Configure the AWS Command-line: aws configure wizard Configure the AWS Command-line using SSO: aws configure sso See help text for the AWS command: aws {{command}} help Get the caller identity (used to troubleshoot permissions): aws sts get-caller-identity List AWS resources in a region and output in YAML: aws dynamodb list-tables --region {{us-east-1}} --output yaml
aws backup Unified backup service designed to protect Amazon Web Services services and their associated data. More information: https://docs.aws.amazon.com/cli/latest/reference/backup/index.html. Return BackupPlan details for a specific BackupPlanId: aws backup get-backup-plan --backup-plan-id {{id}} Create a backup plan using a specific backup plan name and backup rules: aws backup create-backup-plan --backup-plan {{plan}} Delete a specific backup plan: aws backup delete-backup-plan --backup-plan-id {{id}} Return a list of all active backup plans for the current account: aws backup list-backup-plans
aws batch Run batch computing workloads through the AWS Batch service. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/batch/index.html. List running batch jobs: aws batch list-jobs --job-queue {{queue_name}} Create compute environment: aws batch create-compute-environment --compute-environment-name {{compute_environment_name}} --type {{type}} Create batch job queue: aws batch create-job-queue --job-queue-name {{queue_name}} --priority {{priority}} --compute-environment-order {{compute_environment}} Submit job: aws batch submit-job --job-name {{job_name}} --job-queue {{job_queue}} --job-definition {{job_definition}} Describe the list of batch jobs: aws batch describe-jobs --jobs {{jobs}} Cancel job: aws batch cancel-job --job-id {{job_id}} --reason {{reason}}
aws cloud9 Manage Cloud9 - a collection of tools to code, build, run, test, debug, and release software in the cloud. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloud9/index.html. Get a list of Cloud9 development environment identifiers: aws cloud9 list-environments Create a Cloud9 development environment: aws cloud9 create-environment-ec2 --name {{name}} --instance-type {{instance_type}} Display information about Cloud9 development environments: aws cloud9 describe-environments --environment-ids {{environment_ids}} Add an environment member to a Cloud9 development environment: aws cloud9 create-environment-membership --environment-id {{environment_id}} --user-arn {{user_arn}} --permissions {{permissions}}
aws cloudformation Model, provision, and manage AWS and third-party resources by treating infrastructure as code. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudformation/index.html. Create a stack from a template file: aws cloudformation create-stack --stack-name {{stack-name}} --region {{region}} --template-body {{file://path/to/file.yml}} --profile {{profile}} Delete a stack: aws cloudformation delete-stack --stack-name {{stack-name}} --profile {{profile}} List all stacks: aws cloudformation list-stacks --profile {{profile}} List all running stacks: aws cloudformation list-stacks --stack-status-filter CREATE_COMPLETE --profile {{profile}} Check the status of a stack: aws cloudformation describe-stacks --stack-name {{stack-id}} --profile {{profile}}
aws cloudwatch Monitor AWS resources to gain system-wide visibility into resource utilization, application performance, and operational health. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudwatch/index.html. List dashboards for your account: aws cloudwatch list-dashboards Display details for the specified dashboard: aws cloudwatch get-dashboard --dashboard-name {{dashboard_name}} List metrics: aws cloudwatch list-metrics List alarms: aws cloudwatch describe-alarms Create or update an alarm and associate it with a metric: aws cloudwatch put-metric-alarm --alarm-name {{alarm_name}} --evaluation-periods {{evaluation_periods}} --comparison-operator {{comparison_operator}} Delete the specified alarms: aws cloudwatch delete-alarms --alarm_names {{alarm_names}}
aws codecommit AWS CodeCommit is a managed source control service that hosts private Git repositories. More information: https://docs.aws.amazon.com/cli/latest/reference/codecommit/. Display help for a specific command: aws codecommit {{command}} help Display help: aws codecommit help
aws cognito-idp Manage Amazon Cognito user pool and its users and groups using the CLI. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cognito-idp/index.html. Create a new Cognito user pool: aws cognito-idp create-user-pool --pool-name {{name}} List all user pools: aws cognito-idp list-user-pools --max-results {{10}} Delete a specific user pool: aws cognito-idp delete-user-pool --user-pool-id {{user_pool_id}} Create a user in a specific pool: aws cognito-idp admin-create-user --username {{username}} --user-pool-id {{user_pool_id}} List the users of a specific pool: aws cognito-idp list-users --user-pool-id {{user_pool_id}}
aws configure Manage configuration for the AWS CLI. More information: https://docs.aws.amazon.com/cli/latest/reference/configure/. Configure AWS CLI interactively (creates a new configuration or updates the default): aws configure Configure a named profile for AWS CLI interactively (creates a new profile or updates an existing one): aws configure --profile {{profile_name}} Display the value from a specific configuration variable: aws configure get {{name}} Display the value for a configuration variable in a specific profile: aws configure get {{name}} --profile {{profile_name}}
aws cur Create, query, and delete AWS usage report definitions. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cur/index.html. Create an AWS cost and usage report definition from a JSON file: aws cur put-report-definition --report-definition file://{{path/to/report_definition.json}} List usage report definitions defined for the logged in account: aws cur describe-report-definitions Delete a usage report definition: aws cur --region {{aws_region}} delete-report-definition --report-name {{report}}
aws ec2 CLI for AWS EC2. Provides secure and resizable computing capacity in the AWS cloud to enable faster development and deployment of applications. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/index.html. Display information about a specific instance: aws ec2 describe-instances --instance-ids {{instance_id}} Display information about all instances: aws ec2 describe-instances Display information about all EC2 volumes: aws ec2 describe-volumes Delete an EC2 volume: aws ec2 delete-volume --volume-id {{volume_id}} Create a snapshot from an EC2 volume: aws ec2 create-snapshot --volume-id {{volume_id}}
aws ecr Push, pull, and manage container images. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ecr/index.html. Authenticate Docker with the default registry (username is AWS): aws ecr get-login-password --region {{region}} | {{docker login}} --username AWS --password-stdin {{aws_account_id}}.dkr.ecr.{{region}}.amazonaws.com Create a repository: aws ecr create-repository --repository-name {{repository}} --image-scanning-configuration scanOnPush={{true|false}} --region {{region}} Tag a local image for ECR: docker tag {{container_name}}:{{tag}} {{aws_account_id}}.dkr.ecr.{{region}}.amazonaws.com/{{container_name}}:{{tag}} Push an image to a repository: docker push {{aws_account_id}}.dkr.ecr.{{region}}.amazonaws.com/{{container_name}}:{{tag}} Pull an image from a repository: docker pull {{aws_account_id}}.
aws glue CLI for AWS Glue. Defines the public endpoint for the AWS Glue service. More information: https://docs.aws.amazon.com/cli/latest/reference/glue/. List jobs: aws glue list-jobs Start a job: aws glue start-job-run --job-name {{job_name}} Start running a workflow: aws glue start-workflow-run --name {{workflow_name}} List triggers: aws glue list-triggers Start a trigger: aws glue start-trigger --name {{trigger_name}} Create a dev endpoint: aws glue create-dev-endpoint --endpoint-name {{name}} --role-arn {{role_arn_used_by_endpoint}}
aws-google-auth Command-line tool to acquire AWS temporary (STS) credentials using Google Apps as a federated (Single Sign-On) provider. More information: https://github.com/cevoaustralia/aws-google-auth. Log in with Google SSO using the IDP and SP identifiers and set the credentials duration to one hour: aws-google-auth -u {{example@example.com}} -I {{$GOOGLE_IDP_ID}} -S {{$GOOGLE_SP_ID}} -d {{3600}} Log in [a]sking which role to use (in case of several available SAML roles): aws-google-auth -u {{example@example.com}} -I {{$GOOGLE_IDP_ID}} -S {{$GOOGLE_SP_ID}} -d {{3600}} -a
aws help Display help information about the AWS CLI. More information: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-help.html. Display help: aws help List all available topics: aws help topics Display help about a specific topic: aws help {{topic_name}}
aws history Print the command-line history for AWS CLI commands (the record of history of AWS CLI commands must be enabled). More information: https://docs.aws.amazon.com/cli/latest/reference/history/. List commands history with command IDs: aws history list Display events related to a specific command given a command ID: aws history show {{command_id}}
aws iam CLI for AWS IAM. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/index.html. Show aws iam help page (including all available iam commands): aws iam help List users: aws iam list-users List policies: aws iam list-policies List groups: aws iam list-groups Get users in a group: aws iam get-group --group-name {{group_name}} Describe an IAM policy: aws iam get-policy --policy-arn arn:aws:iam::aws:policy/{{policy_name}} List access keys: aws iam list-access-keys List access keys for a specific user: aws iam list-access-keys --user-name {{user_name}}
aws kinesis Official AWS CLI for Amazon Kinesis streaming data services. More information: https://docs.aws.amazon.com/cli/latest/reference/kinesis/index.html#cli-aws-kinesis. Show all streams in the account: aws kinesis list-streams Write one record to a Kinesis stream: aws kinesis put-record --stream-name {{name}} --partition-key {{key}} --data {{base64_encoded_message}} Write a record to a Kinesis stream with inline base64 encoding: aws kinesis put-record --stream-name {{name}} --partition-key {{key}} --data "$( echo "{{my raw message}}" | base64 )" List the shards available on a stream: aws kinesis list-shards --stream-name {{name}}
aws lambda CLI for AWS lambda. More information: https://docs.aws.amazon.com/cli/latest/reference/lambda/. Run a function: aws lambda invoke --function-name {{name}} {{path/to/response}}.json Run a function with an input payload in JSON format: aws lambda invoke --function-name {{name}} --payload {{json}} {{path/to/response}}.json List functions: aws lambda list-functions Display the configuration of a function: aws lambda get-function-configuration --function-name {{name}} List function aliases: aws lambda list-aliases --function-name {{name}} Display the reserved concurrency configuration for a function: aws lambda get-function-concurrency --function-name {{name}}
aws lightsail Manage Amazon Lightsail resources. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lightsail/index.html. List all virtual private servers, or instances: aws lightsail get-instances List all bundles (instance plans): aws lightsail list-bundles List all available instance images, or blueprints: aws lightsail list-blueprints Create an instance: aws lightsail create-instances --instance-names {{name}} --availability-zone {{region}} --bundle-id {{nano_2_0}} --blueprint-id {{blueprint_id}} Print the state of a specific instance: aws lightsail get-instance-state --instance-name {{name}} Stop a specific instance: aws lightsail stop-instance --instance-name {{name}}
aws pricing Query services, products, and pricing information from Amazon Web Services. More information: https://docs.aws.amazon.com/cli/latest/reference/pricing/. List service codes of a specific region: aws pricing describe-services --region {{us-east-1}} List attributes for a given service code in a specific region: aws pricing describe-services --service-code {{AmazonEC2}} --region {{us-east-1}} Print pricing information for a service code in a specific region: aws pricing get-products --service-code {{AmazonEC2}} --region {{us-east-1}} List values for a specific attribute for a service code in a specific region: aws pricing get-attribute-values --service-code {{AmazonEC2}} --attribute-name {{instanceType}} --region {{us-east-1}}
aws quicksight CLI for AWS QuickSight. Access QuickSight entities. More information: https://docs.aws.amazon.com/cli/latest/reference/quicksight/. List datasets: aws quicksight list-data-sets --aws-account-id {{aws_account_id}} List users: aws quicksight list-users --aws-account-id {{aws_account_id}} --namespace default List groups: aws quicksight list-groups --aws-account-id {{aws_account_id}} --namespace default List dashboards: aws quicksight list-dashboards --aws-account-id {{aws_account_id}} Display detailed information about a dataset: aws quicksight describe-data-set --aws-account-id {{aws_account_id}} --data-set-id {{data_set_id}} Display who has access to the dataset and what kind of actions they can perform on the dataset: aws quicksight describe-data-set-permissions --aws-account-id {{aws_account_id}} --data-set-id {{data_set_id}}
aws rds CLI for AWS Relational Database Service. Create and manage relational databases. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/index.html. Show help for specific RDS subcommand: aws rds {{subcommand}} help Stop instance: aws rds stop-db-instance --db-instance-identifier {{instance_identifier}} Start instance: aws rds start-db-instance --db-instance-identifier {{instance_identifier}} Modify an RDS instance: aws rds modify-db-instance --db-instance-identifier {{instance_identifier}} {{parameters}} --apply-immediately Apply updates to an RDS instance: aws rds apply-pending-maintenance-action --resource-identifier {{database_arn}} --apply-action {{system-update}} --opt-in-type {{immediate}} Change an instance identifier: aws rds modify-db-instance --db-instance-identifier {{old_instance_identifier}} --new-db-instance-identifier {{new_instance_identifier}}
aws route53 CLI for AWS Route53 - Route 53 is a highly available and scalable Domain Name System (DNS) web service. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/route53/index.html. List all hosted zones, private and public: aws route53 list-hosted-zones Show all records in a zone: aws route53 list-resource-record-sets --hosted-zone-id {{zone_id}} Create a new, public zone using a request identifier to retry the operation safely: aws route53 create-hosted-zone --name {{name}} --caller-reference {{request_identifier}} Delete a zone (if the zone has non-defaults SOA and NS records the command will fail): aws route53 delete-hosted-zone --id {{zone_id}}
aws s3 CLI for AWS S3 - provides storage through web services interfaces. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3/index.html. Show files in a bucket: aws s3 ls {{bucket_name}} Sync files and directories from local to bucket: aws s3 sync {{path/to/files}} s3://{{bucket_name}} Sync files and directories from bucket to local: aws s3 sync s3://{{bucket_name}} {{path/to/target}} Sync files and directories with exclusions: aws s3 sync {{path/to/files}} s3://{{bucket_name}} --exclude {{path/to/file}} --exclude {{path/to/directory}}/* Remove file from bucket: aws s3 rm s3://{{bucket}}/{{path/to/file}}
aws s3 cp Copy local files or S3 objects to another location locally or in S3. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3/cp.html. Copy a file from local to a specific bucket: aws s3 cp {{path/to/file}} s3://{{bucket_name}}/{{path/to/remote_file}} Copy a specific S3 object into another bucket: aws s3 cp s3://{{bucket_name1}}/{{path/to/file}} s3://{{bucket_name2}}/{{path/to/target}} Copy a specific S3 object into another bucket keeping the original name: aws s3 cp s3://{{bucket_name1}}/{{path/to/file}} s3://{{bucket_name2}} Copy S3 objects to a local directory recursively: aws s3 cp s3://{{bucket_name}} .
aws s3 ls List AWS S3 buckets, folders (prefixes), and files (objects). More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3/ls.html. List all buckets: aws s3 ls List files and folders in the root of a bucket (s3:// is optional): aws s3 ls s3://{{bucket_name}} List files and folders directly inside a directory: aws s3 ls {{bucket_name}}/{{path/to/directory}}/ List all files in a bucket: aws s3 ls --recursive {{bucket_name}} List all files in a path with a given prefix: aws s3 ls --recursive {{bucket_name}}/{{path/to/directory/}}{{prefix}}
aws s3 mb Create S3 buckets. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3/mb.html. Create an S3 bucket: aws s3 mb s3://{{bucket_name}} Create an S3 bucket in a specific region: aws s3 mb s3://{{bucket_name}} --region {{region}} Display help: aws s3 mb help
aws s3 mv Move local files or S3 objects to another location locally or in S3. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3/mv.html. Move a file from local to a specified bucket: aws s3 mv {{path/to/local_file}} s3://{{bucket_name}}/{{path/to/remote_file}} Move a specific S3 object into another bucket: aws s3 mv s3://{{bucket_name1}}/{{path/to/file}} s3://{{bucket_name2}}/{{path/to/target}} Move a specific S3 object into another bucket keeping the original name: aws s3 mv s3://{{bucket_name1}}/{{path/to/file}} s3://{{bucket_name2}} Display help: aws s3 mv help
aws s3 presign Generate pre-signed URLs for Amazon S3 objects. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3/presign.html. Generate a pre-signed URL for a specific S3 object that is valid for one hour: aws s3 presign s3://{{bucket_name}}/{{path/to/file}} Generate a pre-signed URL valid for a specific lifetime: aws s3 presign s3://{{bucket_name}}/{{path/to/file}} --expires-in {{duration_in_seconds}} Display help: aws s3 presign help
aws s3 rm Delete S3 objects. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3/rm.html. Delete a specific S3 object: aws s3 rm s3://{{bucket_name}}/{{path/to/file}} Preview the deletion of a specific S3 object without deleting it (dry-run): aws s3 rm s3://{{bucket_name}}/{{path/to/file}} --dryrun Delete an object from a specific S3 access point: aws s3 rm s3://arn:aws:s3:{{region}}:{{account_id}}:{{access_point}}/{{access_point_name}}/{{object_key}} Display help: aws s3 rm help
aws s3api Create and delete Amazon S3 buckets and edit bucket properties. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/index.html. Create bucket in a specific region: aws s3api create-bucket --bucket {{bucket_name}} --region {{region}} --create-bucket-configuration LocationConstraint={{region}} Delete a bucket: aws s3api delete-bucket --bucket {{bucket_name}} List buckets: aws s3api list-buckets List the objects inside of a bucket and only show each object’s key and size: aws s3api list-objects --bucket {{bucket_name}} --query '{{Contents[].{Key: Key, Size: Size}}}' Add an object to a bucket: aws s3api put-object --bucket {{bucket_name}} --key {{object_key}} --body {{path/to/file}}
aws secretsmanager Store, manage, and retrieve secrets. More information: https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/. Show secrets stored by the secrets manager in the current account: aws secretsmanager list-secrets Create a secret: aws secretsmanager create-secret --name {{name}} --description "{{secret_description}}" --secret-string {{secret}} Delete a secret: aws secretsmanager delete-secret --secret-id {{name_or_arn}} View details of a secret except for secret text: aws secretsmanager describe-secret --secret-id {{name_or_arn}} Retrieve the value of a secret (to get the latest version of the secret omit --version-stage): aws secretsmanager get-secret-value --secret-id {{name_or_arn}} --version-stage {{version_of_secret}}
aws ses CLI for AWS Simple Email Service. High-scale inbound and outbound cloud email service. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ses/index.html. Create a new receipt rule set: aws ses create-receipt-rule-set --rule-set-name {{rule_set_name}} --generate-cli-skeleton Describe the active receipt rule set: aws ses describe-active-receipt-rule-set --generate-cli-skeletion Describe a specific receipt rule: aws ses describe-receipt-rule --rule-set-name {{rule_set_name}} --rule-name {{rule_name}} --generate-cli-skeleton List all receipt rule sets: aws ses list-receipt-rule-sets --starting-token {{token_string}} --max-items {{integer}} --generate-cli-skeleton Delete a specific receipt rule set (the currently active rule set cannot be deleted): aws ses delete-receipt-rule-set --rule-set-name {{rule_set_name}} --generate-cli-skeleton
aws sqs Create, delete, and send messages to queues for the AWS SQS service. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sqs/index.html. List all availables queues: aws sqs list-queues Display the URL of a specific queue: aws sqs get-queue-url --queue-name {{queue_name}} Create a queue with specific attributes from a file in JSON format: aws sqs create-queue --queue-name {{queue_name}} --attributes {{file://path/to/attributes_file.json}} Send a specific message to a queue: aws sqs send-message --queue-url https://sqs.{{region}}.amazonaws.com/{{queue_name}} --message-body "{{message_body}}" --delay-seconds {{delay}} --message-attributes {{file://path/to/attributes_file.
aws sts Security Token Service (STS) allows to request temporary credentials for (IAM) users or federated users. More information: https://docs.aws.amazon.com/cli/latest/reference/sts/. Get temporary security credentials to access specific AWS resources: aws sts assume-role --role-arn {{aws_role_arn}} Get an IAM user or role whose credentials are used to call the operation: aws sts get-caller-identity
aws-vault A vault for securely storing and accessing AWS credentials in development environments. More information: https://github.com/99designs/aws-vault. Add credentials to the secure keystore: aws-vault add {{profile}} Execute a command with AWS credentials in the environment: aws-vault exec {{profile}} -- {{aws s3 ls}} Open a browser window and login to the AWS Console: aws-vault login {{profile}} List profiles, along with their credentials and sessions: aws-vault list Rotate AWS credentials: aws-vault rotate {{profile}}
aws workmail Manage Amazon WorkMail. More information: https://awscli.amazonaws.com/v2/documentation/api/latest/reference/workmail/index.html. List all WorkMail organizations: aws workmail list-organizations List all users of a specific organization: aws workmail list-users --organization-id {{organization_id}} Create a WorkMail user in a specific organization: aws workmail create-user --name {{username}} --display-name {{name}} --password {{password}} --organization-id {{organization_id}} Register and enable a group/user to WorkMail: aws workmail register-to-work-mail --entity-id {{entity_id}} --email {{email}} --organization-id {{organization_id}} Create a WorkMail group in a specific organization: aws workmail create-group --name {{group_name}} --organization-id {{organization_id}}
awslogs Queries groups, streams and events from Amazon CloudWatch logs. More information: https://github.com/jorgebastida/awslogs. List log groups: awslogs groups List existing streams for the specified group: awslogs streams {{/var/log/syslog}} Get logs for any streams in the specified group between 1 and 2 hours ago: awslogs get {{/var/log/syslog}} --start='{{2h ago}}' --end='{{1h ago}}' Get logs that match a specific CloudWatch Logs Filter pattern: awslogs get {{/aws/lambda/my_lambda_group}} --filter-pattern='{{ERROR}}' Watch logs for any streams in the specified group: awslogs get {{/var/log/syslog}} ALL --watch
axel Download accelerator. Supports HTTP, HTTPS, and FTP. More information: https://github.com/axel-download-accelerator/axel. Download a URL to a file: axel {{url}} Download and specify filename: axel {{url}} -o {{path/to/file}} Download with multiple connections: axel -n {{connections_num}} {{url}} Search for mirrors: axel -S {{mirrors_num}} {{url}} Limit download speed (bytes per second): axel -s {{speed}} {{url}}
az The official CLI tool for Microsoft Azure. Some subcommands such as az login have their own usage documentation. More information: https://learn.microsoft.com/cli/azure. Log in to Azure: az login Manage azure subscription information: az account List all Azure Managed Disks: az disk list List all Azure virtual machines: az vm list Manage Azure Kubernetes Services: az aks Manage Azure Network resources: az network
az account Manage Azure subscription information. Part of az, the command-line client for Microsoft Azure. More information: https://learn.microsoft.com/cli/azure/account. Print a list of subscriptions for the logged in account: az account list Set a subscription to be the currently active subscription: az account set --subscription {{subscription_id}} List supported regions for the currently active subscription: az account list-locations Print an access token to be used with MS Graph API: az account get-access-token --resource-type {{ms-graph}}
az appconfig Manage App configurations on Azure. Part of az, the command-line client for Microsoft Azure. More information: https://learn.microsoft.com/cli/azure/appconfig. Create an App Configuration: az appconfig create --name {{name}} --resource-group {{group_name}} --location {{location}} Delete a specific App Configuration: az appconfig delete --resource-group {{rg_name}} --name {{appconfig_name}} List all App Configurations under the current subscription: az appconfig list List all App Configurations under a specific resource group: az appconfig list --resource-group {{rg_name}} Show properties of an App Configuration: az appconfig show --name {{appconfig_name}}
az bicep Bicep CLI command group. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/bicep. Install Bicep CLI: az bicep install Build a Bicep file: az bicep build --file {{path/to/file.bicep}} Attempt to decompile an ARM template file to a Bicep file: az bicep decompile --file {{path/to/template_file.json}} Upgrade Bicep CLI to the latest version: az bicep upgrade Display the installed version of Bicep CLI: az bicep version List all available versions of Bicep CLI: az bicep list-versions
az config Manage Azure CLI configuration. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/config. Print all configurations: az config get Print configurations for a specific section: az config get {{section_name}} Set a configuration: az config set {{configuration_name}}={{value}} Unset a configuration: az config unset {{configuration_name}}
az devops Manage Azure DevOps organizations. Part of azure-cli. More information: https://learn.microsoft.com/en-us/cli/azure/devops?view=azure-cli-latest. Set the Personal Access Token (PAT) to login to a particular organization: az devops login --organization {{organization_url}} Open a project in the browser: az devops project show --project {{project_name}} --open List members of a specific team working on a particular project: az devops team list-member --project {{project_name}} --team {{team_name}} Check the Azure DevOps CLI current configuration: az devops configure --list
az feedback Send feedback to the Azure CLI Team. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/reference-index#az_feedback. Send feedback to the Azure CLI Team: az feedback
az group Manage resource groups and template deployments. Part of azure-cli. More information: https://docs.microsoft.com/cli/azure/group. Create a new resource group: az group create --name {{name}} --location {{location}} Check if a resource group exists: az group exists --name {{name}} Delete a resource group: az group delete --name {{name}} Wait until a condition of the resource group is met: az group wait --name {{name}} --{{created|deleted|exists|updated}}
az lock Manage Azure locks. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/lock. Create a read-only subscription level lock: az lock create --name {{lock_name}} --lock-type ReadOnly Create a read-only resource group level lock: az lock create --name {{lock_name}} --resource-group {{group_name}} --lock-type ReadOnly Delete a subscription level lock: az lock delete --name {{lock_name}} Delete a resource group level lock: az lock delete --name {{lock_name}} --resource-group {{group_name}} List out all locks on the subscription level: az lock list
az login Log in to Azure. Part of az, the command-line client for Microsoft Azure. More information: https://learn.microsoft.com/cli/azure/reference-index#az_login. Log in interactively: az login Log in with a service principal using a client secret: az login --service-principal --username {{http://azure-cli-service-principal}} --password {{secret}} --tenant {{someone.onmicrosoft.com}} Log in with a service principal using a client certificate: az login --service-principal --username {{http://azure-cli-service-principal}} --password {{path/to/cert.pem}} --tenant {{someone.onmicrosoft.com}} Log in using a VM’s system assigned identity: az login --identity
az logout Log out from an Azure subscription. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/reference-index#az_logout. Log out from the active account: az logout Log out a specific username: az logout --username {{alias@somedomain.com}}
az network Manage Azure Network resources. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/network. List network resources in a region that are used against a subscription quota: az network list-usages List all virtual networks in a subscription: az network vnet list Create a virtual network: az network vnet create --address-prefixes {{10.0.0.0/16}} --name {{vnet}} --resource_group {{group_name}} --submet-name {{subnet}} --subnet-prefixes {{10.0.0.0/24}} Enable accelerated networking for a network interface card: az network nic update --accelerated-networking true --name {{nic}} --resource-group {{resource_group}}
az pipelines Manage Azure Pipelines resources. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/pipelines. Create a new Azure Pipeline (YAML based): az pipelines create --org {{organization_url}} --project {{project_name}} --name {{pipeline_name}} --description {{description}} --repository {{repository_name}} --branch {{branch_name}} Delete a specific pipeline: az pipelines delete --org {{organization_url}} --project {{project_name}} --id {{pipeline_id}} List pipelines: az pipelines list --org {{organization_url}} --project {{project_name}} Enqueue a specific pipeline to run: az pipelines run --org {{organization_url}} --project {{project_name}} --name {{pipeline_name}}
az provider Manage resource providers. Part of azure-cli. More information: https://docs.microsoft.com/cli/azure/provider. Register a provider: az provider register --namespace {{Microsoft.PolicyInsights}} Unregister a provider: az provider unregister --namespace {{Microsoft.Automation}} List all providers for a subscription: az provider list Show information about a specific provider: az provider show --namespace {{Microsoft.Storage}} List all resource types for a specific provider: az provider list --query "[?namespace=='{{Microsoft.Network}}'].resourceTypes[].resourceType"
az redis Manage Redis caches. Part of azure-cli. More information: https://docs.microsoft.com/cli/azure/redis. Create a new Redis cache instance: az redis create --location {{location}} --name {{name}} --resource-group {{resource_group}} --sku {{Basic|Premium|Standard}} --vm-size {{c0|c1|c2|c3|c4|c5|c6|p1|p2|p3|p4|p5}} Update a Redis cache: az redis update --name {{name}} --resource-group {{resource_group}} --sku {{Basic|Premium|Standard}} --vm-size {{c0|c1|c2|c3|c4|c5|c6|p1|p2|p3|p4|p5}} Export data stored in a Redis cache: az redis export --container {{container}} --file-format {{file-format}} --name {{name}} --prefix {{prefix}} --resource-group {{resource_group}} Delete a Redis cache: az redis delete --name {{name}} --resource-group {{resource_group}} --yes
az repos Manage Azure DevOps repos. Part of azure-cli. More information: https://learn.microsoft.com/en-us/cli/azure/repos?view=azure-cli-latest. List all repos in a specific project: az repos list --project {{project_name}} Add policy on a specific branch of a specific repository to restrict basic merge: az repos policy merge-strategy create --repository-id {{repository_id_in_repos_list}} --branch {{branch_name}} --blocking --enabled --allow-no-fast-forward false --allow-rebase true --allow-rebase-merge true --allow-squash true Add build validation on a specific repository, using an existing build pipeline, to be triggered automatically on source update: az repos policy build create --repository-id {{repository_id}} --build-definition-id {{build_pipeline_id}} --branch main --blocking --enabled --queue-on-source-update-only true --display-name {{name}} --valid-duration {{minutes}}
az sshkey Manage ssh public keys with virtual machines. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/sshkey. Create a new SSH key: az sshkey create --name {{name}} --resource-group {{resource_group}} Upload an existing SSH key: az sshkey create --name {{name}} --resource-group {{resource_group}} --public-key "{{@path/to/key.pub}}" List all SSH public keys: az sshkey list Show information about an SSH public key: az sshkey show --name {{name}} --resource-group {{resource_group}}
az storage Manage Azure Cloud Storage resources. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/storage. Create a storage account: az storage account create -g {{group_name}} -n {{account_name}} -l {{location}} --sku {{account_sku}} List all storage accounts in a resource group: az storage account list -g {{group_name}} List the access keys for a storage account: az storage account keys list -g {{group_name}} -n {{account_name}} Delete a storage account: az storage account delete -g {{group_name}} -n {{account_name}}
az storage account Manage storage accounts in Azure. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/storage/account. Create an storage account: az storage account create --name {{storage_account_name}} --resource-group {{azure_resource_group}} --location {{azure_location}} --sku {{storage_account_sku}} Generate a shared access signature for a specific storage account: az storage account generate-sas --account-name {{storage_account_name}} --name {{account_name}} --permissions {{sas_permissions}} --expiry {{expiry_date}} --services {{storage_services}} --resource-types {{resource_types}} List storage accounts: az storage account list --resource-group {{azure_resource_group}} Delete a specific storage account: az storage account delete --name {{storage_account_name}} --resource-group {{azure_resource_group}}
az storage blob Manage blob storage containers and objects in Azure. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/storage/blob. Download a blob to a file path: az storage blob download --account-name {{storage_account_name}} --account-key {{storage_account_key}} -c {{container_name}} -n {{path/to/blob}} -f {{path/to/local_file}} Download blobs from a blob container recursively: az storage blob download-batch --account-name {{storage_account_name}} --account-key {{storage_account_key}} -s {{container_name}} -d {{path/to/remote}} --pattern {{filename_regex}} --destination {{path/to/destination}} Upload a local file to blob storage: az storage blob upload --account-name {{storage_account_name}} --account-key {{storage_account_key}} -c {{container_name}} -n {{path/to/blob}} -f {{path/to/local_file}}
az storage container Manage blob storage containers in Azure. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/storage/container. Create a container in a storage account: az storage container create --account-name {{storage_account_name}} --name {{container_name}} --public-access {{access_level}} --fail-on-exist Generate a shared access signature for the container: az storage container generate-sas --account-name {{storage_account_name}} --name {{container_name}} --permissions {{sas_permissions}} --expiry {{expiry_date}} --https-only List containers in a storage account: az storage container list --account-name {{storage_account_name}} --prefix {{filter_prefix}} Mark the specified container for deletion: az storage container delete --account-name {{storage_account_name}} --name {{container_name}} --fail-not-exist
az storage entity Manage Azure Table storage entities. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/storage/entity. Insert an entity into a table: az storage entity insert --entity {{space_separated_key_value_pairs}} --table-name {{table_name}} --account-name {{storage_account_name}} --account-key {{storage_account_key}} Delete an existing entity from a table: az storage entity delete --partition-key {{partition_key}} --row-key {{row_key}} --table-name {{table_name}} --account-name {{storage_account_name}} --account-key {{storage_account_key}} Update an existing entity by merging its properties: az storage entity merge --entity {{space_separated_key_value_pairs}} --table-name {{table_name}} --account-name {{storage_account_name}} --account-key {{storage_account_key}}
az storage queue Manage storage queues in Azure. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/storage/queue. Create a queue: az storage queue create --account-name {{storage_account_name}} --name {{queue_name}} --metadata {{queue_metadata}} Generate a shared access signature for the queue: az storage queue generate-sas --account-name {{storage_account_name}} --name {{queue_name}} --permissions {{queue_permissions}} --expiry {{expiry_date}} --https-only List queues in a storage account: az storage queue list --prefix {{filter_prefix}} --account-name {{storage_account_name}} Delete the specified queue and any messages it contains: az storage queue delete --account-name {{storage_account_name}} --name {{queue_name}} --fail-not-exist
az storage table Manage NoSQL key-value storage in Azure. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/storage/table. Create a new table in the storage account: az storage table create --account-name {{storage_account_name}} --name {{table_name}} --fail-on-exist Generate a shared access signature for the table: az storage table generate-sas --account-name {{storage_account_name}} --name {{table_name}} --permissions {{sas_permissions}} --expiry {{expiry_date}} --https-only List tables in a storage account: az storage table list --account-name {{storage_account_name}} Delete the specified table and any data it contains: az storage table delete --account-name {{storage_account_name}} --name {{table_name}} --fail-not-exist
az tag Manage tags on a resource. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/tag. Create a tag value: az tag add-value --name {{tag_name}} --value {{tag_value}} Create a tag in the subscription: az tag create --name {{tag_name}} Delete a tag from the subscription: az tag delete --name {{tag_name}} List all tags on a subscription: az tag list --resource-id /subscriptions/{{subscription_id}} Delete a tag value for a specific tag name: az tag remove-value --name {{tag_name}} --value {{tag_value}}
az term Manage marketplace agreement with marketplaceordering. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/term. Print marketplace terms: az term show --product "{{product_identifier}}" --plan "{{plan_identifier}}" --publisher "{{publisher_identifier}}" Accept marketplace terms: az term accept --product "{{product_identifier}}" --plan "{{plan_identifier}}" --publisher "{{publisher_identifier}}"
az upgrade Upgrade Azure CLI and Extensions. Part of az, the command-line client for Microsoft Azure. More information: https://learn.microsoft.com/cli/azure/reference-index?view=azure-cli-latest#az-upgrade. Upgrade Azure CLI: az upgrade Upgrade Azure CLI and Extensions: az upgrade --all Upgrade Azure CLI and Extensions without prompting for confirmation: az version --all --yes
az version Shows the current version of Azure CLI modules and extensions. Part of az, the command-line client for Microsoft Azure. More information: https://learn.microsoft.com/cli/azure/reference-index?view=azure-cli-latest#az-version. Show the current version of Azure CLI modules and extensions in JSON format: az version Show the current version of Azure CLI modules and extensions in a given format: az version --output {{json|table|tsv}}
az vm Manage virtual machines in Azure. Part of azure-cli. More information: https://learn.microsoft.com/cli/azure/vm. List details of available Virtual Machines: az vm list Create a virtual machine using the default Ubuntu image and generate ssh keys: az vm create --resource-group {{rg}} --name {{vm_name}} --image {{UbuntuLTS}} --admin-user {{azureuser}} --generate-ssh-keys Stop a Virtual Machine: az vm stop --resource-group {{rg}} --name {{vm_name}} Deallocate a Virtual Machine: az vm deallocate --resource-group {{rg}} --name {{vm_name}} Start a Virtual Machine: az vm start --resource-group {{rg}} --name {{vm_name}}
az webapp Manage Web Applications hosted in Azure Cloud Services. Part of azure-cli. Mode information: https://learn.microsoft.com/cli/azure/webapp. List available runtimes for a web application: az webapp list-runtimes --os-type {{windows|linux}} Create a web application: az webapp up --name {{name}} --location {{location}} --runtime {{runtime}} List all web applications: az webapp list Delete a specific web application: az webapp delete --name {{name}} --resource-group {{resource_group}}
azurite Azure Storage API compatible server (emulator) in local environment. More information: https://www.npmjs.com/package/azurite. Use an existing [l]ocation as workspace path: azurite {{-l|--location}} {{path/to/directory}} Disable access log displayed in console: azurite {{-s|--silent}} Enable [d]ebug log by providing a file path as log destination: azurite {{-d|--debug}} {{path/to/debug.log}} Customize the listening address of Blob/Queue/Table service: azurite {{--blobHost|--queueHost|--tableHost}} {{0.0.0.0}} Customize the listening port of Blob/Queue/Table service: azurite {{--blobPort|--queuePort|--tablePort}} {{8888}}
b2sum Calculate BLAKE2 cryptographic checksums. More information: https://www.gnu.org/software/coreutils/b2sum. Calculate the BLAKE2 checksum for one or more files: b2sum {{path/to/file1 path/to/file2 ...}} Calculate and save the list of BLAKE2 checksums to a file: b2sum {{path/to/file1 path/to/file2 ...}} > {{path/to/file.b2}} Calculate a BLAKE2 checksum from stdin: {{command}} | b2sum Read a file of BLAKE2 sums and filenames and verify all files have matching checksums: b2sum --check {{path/to/file.b2}} Only show a message for missing files or when verification fails: b2sum --check --quiet {{path/to/file.
b3sum Calculate BLAKE3 cryptographic checksums. More information: https://github.com/BLAKE3-team/BLAKE3/tree/master/b3sum. Calculate the BLAKE3 checksum for one or more files: b3sum {{path/to/file1 path/to/file2 ...}} Calculate and save the list of BLAKE3 checksums to a file: b3sum {{path/to/file1 path/to/file2 ...}} > {{path/to/file.b3}} Calculate a BLAKE3 checksum from stdin: {{command}} | b3sum Read a file of BLAKE3 sums and filenames and verify all files have matching checksums: b3sum --check {{path/to/file.b3}} Only show a message for missing files or when verification fails: b3sum --check --quiet {{path/to/file.
babel A transpiler which converts code from JavaScript ES6/ES7 syntax to ES5 syntax. More information: https://babeljs.io/. Transpile a specified input file and output to stdout: babel {{path/to/file}} Transpile a specified input file and output to a specific file: babel {{path/to/input_file}} --out-file {{path/to/output_file}} Transpile the input file every time it is changed: babel {{path/to/input_file}} --watch Transpile a whole directory of files: babel {{path/to/input_directory}} Ignore specified comma-separated files in a directory: babel {{path/to/input_directory}} --ignore {{ignored_files}}
babeld Routing daemon for Babel which uses firewall-style filters. More information: https://www.irif.fr/~jch/software/babel/babeld.html. Start babeld with a specific configuration file: babeld -c {{path/to/babeld.conf}} Start babeld with multiple configuration files (read in order): babeld -c {{path/to/ports.conf}} -c {{path/to/filters.conf}} -c {{path/to/interfaces.conf}} Start babeld and daemonise afterwards: babeld -D Start babeld and pass a configuration command: babeld -C {{'redistribute metric 256'}} Start babeld and specify on which interfaces to operate: babeld {{eth0}} {{eth1}} {{wlan0}}
badblocks Search a device for bad blocks. Some usages of badblocks can cause destructive actions, such as erasing all data on a disk, including the partition table. More information: https://manned.org/badblocks. Search a disk for bad blocks by using a non-destructive read-only test: sudo badblocks {{/dev/sdX}} Search an unmounted disk for bad blocks with a non-destructive read-write test: sudo badblocks -n {{/dev/sdX}} Search an unmounted disk for bad blocks with a destructive write test: sudo badblocks -w {{/dev/sdX}}
balena Interact with the balenaCloud, openBalena and the balena API. More information: https://www.balena.io/docs/reference/cli/. Log in to the balenaCloud account: balena login Create a balenaCloud or openBalena application: balena app create {{app_name}} List all balenaCloud or openBalena applications within the account: balena apps List all devices associated with the balenaCloud or openBalena account: balena devices Flash a balenaOS image to a local drive: balena local flash {{path/to/balenaos.img}} --drive {{drive_location}}
bandwhich Display the current network utilization by process, connection or remote IP/hostname. More information: https://github.com/imsnif/bandwhich. Show the remote addresses table only: bandwhich --addresses Show DNS queries: bandwhich --show-dns Show total (cumulative) usage: bandwhich --total-utilization Show the network utilization for a specific network interface: bandwhich --interface {{eth0}} Show DNS queries with a given DNS server: bandwhich --show-dns --dns-server {{dns_server_ip}}
banner Print the given argument as a large ASCII art. More information: https://manned.org/banner. Print the text message as a large banner (quotes are optional): banner "{{Hello World}}" Print the text message as a banner with a width of 50 characters: banner -w {{50}} "{{Hello World}}" Read text from stdin: banner
base32 Encode or decode file or stdin to/from Base32, to stdout. More information: https://www.gnu.org/software/coreutils/base32. Encode a file: base32 {{path/to/file}} Decode a file: base32 --decode {{path/to/file}} Encode from stdin: {{somecommand}} | base32 Decode from stdin: {{somecommand}} | base32 --decode
base64 Encode or decode file or stdin to/from Base64, to stdout. More information: https://www.gnu.org/software/coreutils/base64. Encode the contents of a file as base64 and write the result to stdout: base64 {{path/to/file}} Decode the base64 contents of a file and write the result to stdout: base64 --decode {{path/to/file}} Encode from stdin: {{somecommand}} | base64 Decode from stdin: {{somecommand}} | base64 --decode
basename Remove leading directory portions from a path. More information: https://www.gnu.org/software/coreutils/basename. Show only the file name from a path: basename {{path/to/file}} Show only the rightmost directory name from a path: basename {{path/to/directory/}} Show only the file name from a path, with a suffix removed: basename {{path/to/file}} {{suffix}}
basenc Encode or decode file or stdin using a specified encoding, to stdout. More information: https://www.gnu.org/software/coreutils/basenc. Encode a file with base64 encoding: basenc --base64 {{path/to/file}} Decode a file with base64 encoding: basenc --decode --base64 {{path/to/file}} Encode from stdin with base32 encoding with 42 columns: {{command}} | basenc --base32 -w42 Encode from stdin with base32 encoding: {{command}} | basenc --base32
bash Bourne-Again SHell, an sh-compatible command-line interpreter. See also: zsh, histexpand (history expansion). More information: https://gnu.org/software/bash/. Start an interactive shell session: bash Start an interactive shell session without loading startup configs: bash --norc Execute specific [c]ommands: bash -c "{{echo 'bash is executed'}}" Execute a specific script: bash {{path/to/script.sh}} Execute a specific script while printing each command before executing it: bash -x {{path/to/script.sh}} Execute a specific script and stop at the first [e]rror: bash -e {{path/to/script.
bash-it A collection of community contributed Bash commands and scripts for Bash 3.2+. More information: https://bash-it.readthedocs.io/en/latest/. Update Bash-it to the latest stable/development version: bash-it update {{stable|dev}} Reload Bash profile (set BASH_IT_AUTOMATIC_RELOAD_AFTER_CONFIG_CHANGE to non-empty value for an automatic reload): bash-it reload Restart Bash: bash-it restart Reload Bash profile with enabled error and warning logging: bash-it doctor Reload Bash profile with enabled error/warning/entire logging: bash-it doctor {{errors|warnings|all}} Search for Bash-it aliases/plugins/completions: bash-it search {{alias|plugin|completion}}
bashmarks Save and jump to commonly used directories using 1 character commands. More information: https://github.com/huyng/bashmarks. List available bookmarks: l Save the current directory as “bookmark_name”: s {{bookmark_name}} Go to a bookmarked directory: g {{bookmark_name}} Print a bookmarked directory’s contents: p {{bookmark_name}} Delete a bookmark: d {{bookmark_name}}
bastet Clone of the game Tetris in the terminal. More information: https://fph.altervista.org/prog/bastet.html. Start a Tetris game: bastet Navigate the piece horizontally: {{Left|Right}} arrow key Rotate the piece clockwise or counterclockwise: {{Spacebar|Up arrow key}} Soft drop the piece: Down arrow key Hard drop the piece: Enter Pause the game: p Quit the game: Ctrl + C
bat Print and concatenate files. A cat clone with syntax highlighting and Git integration. More information: https://github.com/sharkdp/bat. Print the contents of a file to stdout: bat {{path/to/file}} Concatenate several files into the target file: bat {{file1}} {{file2}} > {{target_file}} Append several files into the target file: bat {{file1}} {{file2}} >> {{target_file}} Number all output lines: bat --number {{path/to/file}} Syntax highlight a JSON file: bat --language json {{file.json}} Display all supported languages: bat --list-languages
batch Execute commands at a later time when the system load levels permit. Service atd (or atrun) should be running for the actual executions. More information: https://manned.org/batch. Execute commands from stdin (press Ctrl + D when done): batch Execute a command from stdin: echo "{{./make_db_backup.sh}}" | batch Execute commands from a given file: batch -f {{path/to/file}}
bazel Open-source build and test tool similar to Make, Maven, and Gradle. More information: https://bazel.build/reference/command-line-reference. Build the specified target in the workspace: bazel build {{target}} Remove output files and stop the server if running: bazel clean Stop the bazel server: bazel shutdown Display runtime info about the bazel server: bazel info Display help: bazel help Display version: bazel version
bb Native Clojure interpreter for scripting. More information: https://book.babashka.org/#usage. [e]valuate an expression: bb -e "(+ 1 2 3)" Evaluate a script [f]ile: bb -f {{path/to/script.clj}} Bind input to a sequence of lines from stdin: printf "first\nsecond" | bb -i "(map clojure.string/capitalize *input*)" Bind input to a sequence of EDN(Extensible Data Notation) values from stdin: echo "{:key 'val}" | bb -I "(:key (first *input*))"
bc An arbitrary precision calculator language. See also: dc. More information: https://manned.org/man/bc.1. Start an interactive session: bc Start an interactive session with the standard math library enabled: bc --mathlib Calculate an expression: echo '{{5 / 3}}' | bc Execute a script: bc {{path/to/script.bc}} Calculate an expression with the specified scale: echo 'scale = {{10}}; {{5 / 3}}' | bc Calculate a sine/cosine/arctangent/natural logarithm/exponential function using mathlib: echo '{{s|c|a|l|e}}({{1}})' | bc --mathlib
bcomps Decompose graphs into their biconnected components. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://graphviz.org/pdf/bcomps.1.pdf. Decompose one or more graphs into their biconnected components: bcomps {{path/to/input1.gv}} {{path/to/input2.gv ...}} > {{path/to/output.gv}} Print the number of blocks and cutvertices in one or more graphs: bcomps -v -s {{path/to/input1.gv}} {{path/to/input2.gv ...}} Write each block and block-cutvertex tree to multiple numbered filenames based on output.gv: bcomps -x -o {{path/to/output.
beanstalkd A simple and generic work-queue server. More information: https://beanstalkd.github.io/. Start Beanstalk, listening on port 11300: beanstalkd Start Beanstalk listening on a custom port and address: beanstalkd -l {{ip_address}} -p {{port_number}} Persist work queues by saving them to disk: beanstalkd -b {{path/to/persistence_directory}} Sync to the persistence directory every 500 milliseconds: beanstalkd -b {{path/to/persistence_directory}} -f {{500}}
bedtools A swiss-army knife of tools for genomic-analysis tasks. Used to intersect, group, convert and count data in BAM, BED, GFF/GTF, VCF format. More information: https://bedtools.readthedocs.io. Intersect two files regarding the sequences’ strand and save the result to the specified file: bedtools intersect -a {{path/to/file_1}} -b {{path/to/file_2}} -s > {{path/to/output_file}} Intersect two files with a left outer join, i.e. report each feature from {{file_1}} and NULL if no overlap with {{file_2}}: bedtools intersect -a {{path/to/file_1}} -b {{path/to/file_2}} -lof > {{path/to/output_file}}
behat A PHP framework for Behaviour-Driven Development. More information: https://behat.org. Initialize a new Behat project: behat --init Run all tests: behat Run all tests from the specified suite: behat --suite={{suite_name}} Run tests with a specific output formatter: behat --format {{pretty|progress}} Run tests and output results to a file: behat --out {{path/to/file}} Display a list of definitions in your test suites: behat --definitions
berks Chef cookbook dependency manager. More information: https://docs.chef.io/berkshelf.html. Install cookbook dependencies into a local repo: berks install Update a specific cookbook and its dependencies: berks update {{cookbook}} Upload a cookbook to the Chef server: berks upload {{cookbook}} View the dependencies of a cookbook: berks contingent {{cookbook}}
betty Use natural language to execute commands. More information: https://github.com/pickhardt/betty. Ask Betty something: betty {{what time is it}} Download a file: betty download {{https://example.com/file.ext}} to {{path/to/output_file.ext}} Compress a file or directory to one of the support archive formats: betty {{zip}} {{path/to/file_or_directory}} Extract an archive into the current directory: betty {{unzip}} {{archive.tar.gz}} Extract an archive into a specific directory: betty unarchive {{archive.tar.gz}} to {{path/to/directory}} Play Spotify: betty play {{Spotify}} Drive Betty to madness: betty go crazy
bfg Remove large files or passwords from Git history like git-filter-branch. Note: if your repository is connected to a remote, you will need to force push to it. More information: https://rtyley.github.io/bfg-repo-cleaner/. Remove a file with sensitive data but leave the latest commit untouched: bfg --delete-files {{file_with_sensitive_data}} Remove all text mentioned in the specified file wherever it can be found in the repository’s history: bfg --replace-text {{path/to/file.txt}}
bg Resumes jobs that have been suspended (e.g. using Ctrl + Z), and keeps them running in the background. More information: https://manned.org/bg. Resume the most recently suspended job and run it in the background: bg Resume a specific job (use jobs -l to get its ID) and run it in the background: bg %{{job_id}}
bgpgrep Filter and print BGP data within MRT dumps. Can read files compressed with gzip, bzip2 and xz. More information: https://codeberg.org/1414codeforge/ubgpsuite. Output all routes: bgpgrep {{master6.mrt}} Output all routes received from a specific peer, determined by the peer’s AS number: bgpgrep {{master4.mrt}} -peer {{64498}} Output all routes received from a specific peer, determined by the peer’s IP address: bgpgrep {{master4.mrt.bz2}} -peer {{2001:db8:dead:cafe:acd::19e}} Output all routes which have certain ASNs in their AS path: bgpgrep {{master6.
bindkey Add keybindings to Z-Shell. More information: https://zsh.sourceforge.io/Guide/zshguide04.html. Bind a hotkey to a specific command: bindkey "{{^k}}" {{kill-line}} Bind a hotkey to a specific key sequence: bindkey -s '^o' 'cd ..\n' View keymaps: bindkey -l View the hotkey in a keymap: bindkey -M main
binwalk Firmware Analysis Tool. More information: https://github.com/ReFirmLabs/binwalk. Scan a binary file: binwalk {{path/to/binary}} Extract files from a binary, specifying the output directory: binwalk --extract --directory {{output_directory}} {{path/to/binary}} Recursively extract files from a binary limiting the recursion depth to 2: binwalk --extract --matryoshka --depth {{2}} {{path/to/binary}} Extract files from a binary with the specified file signature: binwalk --dd '{{png image:png}}' {{path/to/binary}} Analyze the entropy of a binary, saving the plot with the same name as the binary and .
bird BIRD Internet Routing Daemon. Routing daemon with support for BGP, OSPF, Babel and others. More information: https://bird.network.cz/. Start Bird with a specific configuration file: bird -c {{path/to/bird.conf}} Start Bird as a specific user and group: bird -u {{username}} -g {{group}}
birdc Bird remote control. Command tool to retrieve information like routes from bird and perform configurations during runtime. More information: https://bird.network.cz/. Open the remote control console: birdc Reload the configuration without restarting Bird: birdc configure Show the current status of Bird: birdc show status Show all configured protocols: birdc show protocols Show all details about a protocol: birdc show protocols {{upstream1}} all Show all routes that contain a specific AS number: birdc "show route where bgp_path ~ [{{4242120045}}]"
bison GNU parser generator. More information: https://www.gnu.org/software/bison/. Compile a bison definition file: bison {{path/to/file.y}} Compile in debug mode, which causes the resulting parser to write additional information to stdout: bison --debug {{path/to/file.y}} Specify the output filename: bison --output {{path/to/output.c}} {{path/to/file.y}} Be verbose when compiling: bison --verbose
bitcoin-cli Command-line client to interact with the Bitcoin daemon via RPC calls. Uses the configuration defined in bitcoin.conf. More information: https://en.bitcoin.it/wiki/Running_Bitcoin#Command-line_arguments. Send a transaction to a given address: bitcoin-cli sendtoaddress "{{address}}" {{amount}} Generate one or more blocks: bitcoin-cli generate {{num_blocks}} Print high-level information about the wallet: bitcoin-cli getwalletinfo List all outputs from previous transactions available to fund outgoing transactions: bitcoin-cli listunspent Export the wallet information to a text file: bitcoin-cli dumpwallet "{{path/to/file}}"
black A Python auto code formatter. More information: https://black.readthedocs.io/en/stable/usage_and_configuration/the_basics.html. Auto-format a file or entire directory: black {{path/to/file_or_directory}} Format the code passed in as a string: black -c "{{code}}" Output whether a file or a directory would have changes made to them if they were to be formatted: black --check {{path/to/file_or_directory}} Output changes that would be made to a file or a directory without performing them (dry-run): black --diff {{path/to/file_or_directory}} Auto-format a file or directory, emitting exclusively error messages to stderr: black --quiet {{path/to/file_or_directory}}
blackfire A command-line profiling tool for PHP. More information: https://blackfire.io. Initialize and configure the Blackfire client: blackfire config Launch the Blackfire agent: blackfire agent Launch the Blackfire agent on a specific socket: blackfire agent --socket="{{tcp://127.0.0.1:8307}}" Run the profiler on a specific program: blackfire run {{php path/to/file.php}} Run the profiler and collect 10 samples: blackfire --samples={{10}} run {{php path/to/file.php}} Run the profiler and output results as JSON: blackfire --json run {{php path/to/file.
blender Command-line interface to the Blender 3D computer graphics application. Arguments are executed in the order they are given. More information: https://docs.blender.org/manual/en/latest/advanced/command_line/arguments.html. Render all frames of an animation in the background, without loading the UI (output is saved to /tmp): blender --background {{path/to/file}}.blend --render-anim Render an animation using a specific image naming pattern, in a path relative (//) to the .blend file: blender --background {{path/to/file}}.blend --render-output //{{render/frame_###.png}} --render-anim Render the 10th frame of an animation as a single image, saved to an existing directory (absolute path): blender --background {{path/to/file}}.
blockout2 Tetris like game in 3D. More information: http://www.blockout.net/blockout2/. Start a new game: blockout2 Navigate the current piece on a 2D plane: {{Up|Down|Left|Right}} arrow key Rotate the piece on its axis: {{Q|W|E|A|S|D}} Hard drop the current piece: Spacebar Pause/unpause the game: p
bmaptool Create or copy block maps intelligently (designed to be faster than cp or dd). More information: https://source.tizen.org/documentation/reference/bmaptool. Create a blockmap from image file: bmaptool create -o {{blockmap.bmap}} {{source.img}} Copy an image file into sdb: bmaptool copy --bmap {{blockmap.bmap}} {{source.img}} {{/dev/sdb}} Copy a compressed image file into sdb: bmaptool copy --bmap {{blockmap.bmap}} {{source.img.gz}} {{/dev/sdb}} Copy an image file into sdb without using a blockmap: bmaptool copy --nobmap {{source.img}} {{/dev/sdb}}
bob Manage and switch between Neovim versions. More information: https://github.com/MordechaiHadad/bob. Install and switch to the specified version of Neovim: bob use {{nightly|stable|latest|version_string|commit_hash}} List installed and currently used versions of Neovim: bob list Uninstall the specified version of Neovim: bob uninstall {{nightly|stable|latest|version_string|commit_hash}} Uninstall Neovim and erase any changes bob has made: bob erase Roll back to a previous nightly version: bob rollback
boot Build tooling for the Clojure programming language. More information: https://github.com/boot-clj/boot. Start a REPL session either with the project or standalone: boot repl Build a single uberjar: boot jar Learn about a command: boot cljs --help Generate scaffolding for a new project based on a template: boot --dependencies boot/new new --template {{template_name}} --name {{project_name}} Build for development (if using the boot/new template): boot dev Build for production (if using the boot/new template): boot prod
borg Deduplicating backup tool. Creates local or remote backups that are mountable as filesystems. More information: https://borgbackup.readthedocs.io/en/stable/usage/general.html. Initialize a (local) repository: borg init {{path/to/repo_directory}} Backup a directory into the repository, creating an archive called “Monday”: borg create --progress {{path/to/repo_directory}}::{{Monday}} {{path/to/source_directory}} List all archives in a repository: borg list {{path/to/repo_directory}} Extract a specific directory from the “Monday” archive in a remote repository, excluding all *.ext files: borg extract {{user}}@{{host}}:{{path/to/repo_directory}}::{{Monday}} {{path/to/target_directory}} --exclude '{{*.
bosh Command-line tool to deploy and manage the bosh director. More information: https://bosh.io/docs/cli-v2/. Create local alias for director: bosh alias-env {{environment_name}} -e {{ip_address|url}} --ca-cert {{ca_certificate}} List environments: bosh environments Log in to the director: bosh login -e {{environment}} List deployments: bosh -e {{environment}} deployments List environment virtual machines: bosh -e {{environment}} vms -d {{deployment}} Ssh into virtual machine: bosh -e {{environment}} ssh {{virtual_machine}} -d {{deployment}} Upload stemcell: bosh -e {{environment}} upload-stemcell {{stemcell_file|url}}
bower A package manager optimized for front-end web development. A package can be a GitHub user/repo shorthand, a Git endpoint, a URL or a registered package. More information: https://bower.io/. Install a project’s dependencies, listed in its bower.json: bower install Install one or more packages to the bower_components directory: bower install {{package}} {{package}} Uninstall packages locally from the bower_components directory: bower uninstall {{package}} {{package}} List local packages and possible updates: bower list
box A PHP application for building and managing Phars. More information: https://github.com/box-project/box. Compile a new Phar file: box compile Compile a new Phar file using a specific config file: box compile -c {{path/to/config}} Display information about the PHAR PHP extension: box info Display information about a specific Phar file: box info {{path/to/phar_file}} Validate the first found config file in the working directory: box validate Verify the signature of a specific Phar file: box verify {{path/to/phar_file}}
boxes Draw, remove, and repair ASCII art boxes. More information: https://boxes.thomasjensen.com. Draw a box around a string: echo "{{string}}" | boxes Remove a box from a string: echo "{{string}}" | boxes -r Draw a box with a specific design around a string: echo "{{string}}" | boxes -d {{parchment}} Draw a box with a width of 10 and a height of 5: echo "{{string}}" | boxes -s {{10}}x{{5}} Draw a box with centered text: echo "{{string}}" | boxes -a c
bpytop A resource monitor that shows information about the CPU, memory, disks, network and processes. A Python version of bashtop. More information: https://github.com/aristocratos/bpytop. Start bpytop: bpytop Start in minimal mode without memory and networking boxes: bpytop -m Show version: bpytop -v Toggle minimal mode: m Search for running programs or processes: f Change settings: M
bq The bq command-line tool is a Python-based command-line tool for BigQuery. More information: https://cloud.google.com/bigquery/docs/reference/bq-cli-reference. Run query against a BigQuery table using standard SQL, add --dry_run flag to estimate the number of bytes read by the query: bq query --nouse_legacy_sql 'SELECT COUNT(*) FROM {{DATASET_NAME}}.{{TABLE_NAME}}' Run a parameterized query: bq query --use_legacy_sql=false --parameter='ts_value:TIMESTAMP:2016-12-07 08:00:00' 'SELECT TIMESTAMP_ADD(@ts_value, INTERVAL 1 HOUR)' Create a new dataset or table in the US location: bq mk --location=US {{dataset_name}}.
brew Package manager for macOS and Linux. More information: https://brew.sh. Install the latest stable version of a formula or cask (use --devel for development versions): brew install {{formula}} List all installed formulae and casks: brew list Upgrade an installed formula or cask (if none is given, all installed formulae/casks are upgraded): brew upgrade {{formula}} Fetch the newest version of Homebrew and of all formulae and casks from the Homebrew source repository: brew update
brew bundle Bundler for Homebrew, Homebrew Cask and the Mac App Store. More information: https://github.com/Homebrew/homebrew-bundle. Install packages from a Brewfile at the current path: brew bundle Install packages from a specific Brewfile at a specific path: brew bundle --file={{path/to/file}} Create a Brewfile from all installed packages: brew bundle dump Uninstall all formulae not listed in the Brewfile: brew bundle cleanup --force Check if there is anything to install or upgrade in the Brewfile: brew bundle check
brew –cask CLI workflow for the administration of macOS applications distributed as binaries. This command was previously called brew cask, it has been deprecated in favor of the brew --cask flag. More information: https://github.com/Homebrew/homebrew-cask. Search for formulas and casks: brew search {{text}} Install a cask: brew install --cask {{cask_name}} List all installed casks: brew list --cask List installed casks that have newer versions available: brew outdated --cask Upgrade an installed cask (if no cask name is given, all installed casks are upgraded): brew upgrade --cask {{cask_name}}
brittany Pretty-print Haskell source files. More information: https://github.com/lspitzner/brittany#readme. Format a Haskell source file and print the result to stdout: brittany {{path/to/file.hs}} Format all Haskell source files in the current directory in-place: brittany --write-mode=inplace {{*.hs}} Check whether a Haskell source file needs changes and indicate the result through the programme’s exit code: brittany --check-mode {{path/to/file.hs}} Format a Haskell source file using the specified amount of spaces per indentation level and line length: brittany --indent {{4}} --columns {{100}} {{path/to/file.
brotli Compress/uncompress files with Brotli compression. More information: https://github.com/google/brotli. Compress a file, creating a compressed version next to the file: brotli {{path/to/file}} Decompress a file, creating an uncompressed version next to the file: brotli -d {{path/to/file.br}} Compress a file specifying the output filename: brotli {{path/to/file}} -o {{path/to/compressed_output_file.br}} Decompress a Brotli file specifying the output filename: brotli -d {{path/to/compressed_file.br}} -o {{path/to/output_file}} Specify the compression level [1=Fastest (Worst), 11=Slowest (Best)]: brotli -q {{11}} {{path/to/file}} -o {{path/to/compressed_output_file.
browser-sync Starts local web server that updates browser on file changes. More information: https://browsersync.io/docs/command-line. Start a server from a specific directory: browser-sync start --server {{path/to/directory}} --files {{path/to/directory}} Start a server from local directory, watching all CSS files in a directory: browser-sync start --server --files '{{path/to/directory/*.css}}' Create configuration file: browser-sync init Start Browsersync from config file: browser-sync start --config {{config_file}}
bshell A GUI tool for browsing for SSH/VNC servers on the local network. See also: bssh and bvnc. More information: https://linux.extremeoverclocking.com/man/1/bssh. Browse for both SSH and VNC servers: bshell Browse for SSH servers only: bshell --ssh Browse for VNC servers only: bshell --vnc Browse for both SSH and VNC servers in a specified domain: bshell --domain={{domain}}
bssh A GUI tool for browsing for SSH/VNC servers on the local network. See also: bvnc and bshell. More information: https://linux.extremeoverclocking.com/man/1/bssh. Browse for SSH servers: bssh Browse for VNC servers: bssh --vnc Browse for both SSH and VNC servers: bssh --shell Browse for SSH servers in a specified domain: bssh --domain={{domain}}
btm An alternative to top. Aims to be lightweight, cross-platform and more graphical than top. More information: https://github.com/ClementTsang/bottom. Show the default layout (CPU, memory, temperatures, disk, network, and processes): btm Enable basic mode, removing charts and condensing data (similar to top): btm --basic Use big dots instead of small ones in charts: btm --dot_marker Show also battery charge and health status: btm --battery Refresh every 250 milliseconds and show the last 30 seconds in the charts: btm --rate 250 --default_time_value 30000
btop A resource monitor that shows information about the CPU, memory, disks, network and processes. A C++ version of bpytop. More information: https://github.com/aristocratos/btop. Start btop: btop Start btop with the specified settings preset: btop --preset {{0..9}}
buku Command-line browser-independent bookmark manager. More information: https://github.com/jarun/Buku. Display all bookmarks matching “keyword” and with “privacy” tag: buku {{keyword}} --stag {{privacy}} Add bookmark with tags “search engine” and “privacy”: buku --add {{https://example.com}} {{search engine}}, {{privacy}} Delete a bookmark: buku --delete {{bookmark_id}} Open editor to edit a bookmark: buku --write {{bookmark_id}} Remove “search engine” tag from a bookmark: buku --update {{bookmark_id}} --tag {{-}} {{search engine}}
bundle Dependency manager for the Ruby programming language. More information: https://bundler.io/man/bundle.1.html. Install all gems defined in the Gemfile expected in the working directory: bundle install Execute a command in the context of the current bundle: bundle exec {{command}} {{arguments}} Update all gems by the rules defined in the Gemfile and regenerate Gemfile.lock: bundle update Update one or more specific gem(s) defined in the Gemfile: bundle update {{gem_name}} {{gem_name}} Update one or more specific gems(s) defined in the Gemfile but only to the next patch version: bundle update --patch {{gem_name}} {{gem_name}}
bundler Dependency manager for the Ruby programming language. bundler is a common name for the command bundle, but not a command itself. More information: https://bundler.io/man/bundle.1.html. View documentation for the original command: tldr bundle
bundletool Command-line tool to manipulate Android Application Bundles. Some subcommands such as bundletool validate have their own usage documentation. More information: https://developer.android.com/studio/command-line/bundletool. Display help for a subcommand: bundletool help {{subcommand}} Generate APKs from an application bundle (prompts for keystore password): bundletool build-apks --bundle={{path/to/bundle.aab}} --ks={{path/to/key.keystore}} --ks-key-alias={{key_alias}} --output={{path/to/file.apks}} Generate APKs from an application bundle giving the keystore password: bundletool build-apks --bundle={{path/to/bundle.aab}} --ks={{path/to/key.keystore}} --ks-key-alias={{key_alias}} –ks-pass={{pass:the_password}} --output={{path/to/file.apks}} Generate APKs including only one single APK for universal usage: bundletool build-apks --bundle={{path/to/bundle.
bundletool dump Command-line tool to manipulate Android Application Bundles. More information: https://developer.android.com/studio/command-line/bundletool. Display the AndroidManifest.xml of the base module: bundletool dump manifest --bundle={{path/to/bundle.aab}} Display a specific value from the AndroidManifest.xml using XPath: bundletool dump manifest --bundle={{path/to/bundle.aab}} --xpath={{/manifest/@android:versionCode}} Display the AndroidManifest.xml of a specific module: bundletool dump manifest --bundle={{path/to/bundle.aab}} --module={{name}} Display all the resources in the application bundle: bundletool dump resources --bundle={{path/to/bundle.aab}} Display the configuration for a specific resource: bundletool dump resources --bundle={{path/to/bundle.
bundletool validate Command-line tool to manipulate Android Application Bundles. More information: https://developer.android.com/studio/command-line/bundletool. Verify a bundle and display detailed information about it: bundletool validate --bundle={{path/to/bundle.aab}}
bup Backup system based on the Git packfile format, providing incremental saves and global deduplication. More information: https://github.com/bup/bup. Initialize a backup repository in the specified local directory: bup -d {{path/to/repository}} init Prepare a given directory before taking a backup: bup -d {{path/to/repository}} index {{path/to/directory}} Backup a directory to the repository: bup -d {{path/to/repository}} save -n {{backup_name}} {{path/to/directory}} Show the backup snapshots currently stored in the repository: bup -d {{path/to/repository}} ls
buzzphrase Node.js command-line tool to output a random buzzphrase. More information: https://github.com/atomantic/buzzphrase. Generate a string of three random phrases containing an adjective, a past tense verb and a plural noun: buzzphrase Output a phrase formatted as [i]mperative verb + past tense [v]erb + [a]djective + plural [N]oun: buzzphrase {{'{i} {v} {a} {N}'}} Output 4 phrases formatted as present participle [V]erb + [a]djective + singular [n]oun + [f]inal: buzzphrase {{4 '{V} {a} {n} {f}'}}
bvnc A GUI tool for browsing for SSH/VNC servers on the local network. See also: bssh and bshell. More information: https://linux.extremeoverclocking.com/man/1/bssh. Browse for VNC servers: bvnc Browse for SSH servers: bvnc --ssh Browse for both VNC and SSH servers: bvnc --shell Browse for VNC servers in a specified domain: bvnc --domain={{domain}}
bw Access and manage a Bitwarden vault. More information: https://help.bitwarden.com/article/cli/. Log in to a Bitwarden user account: bw login Log out of a Bitwarden user account: bw logout Search and display items from Bitwarden vault: bw list items --search {{github}} Display a particular item from Bitwarden vault: bw get item {{github}} Create a folder in Bitwarden vault: {{echo -n '{"name":"My Folder1"}' | base64}} | bw create folder
bzegrep Find extended regular expression patterns in bzip2 compressed files using egrep. More information: https://manned.org/bzegrep. Search for extended regular expressions (supporting ?, +, {}, () and |) in a compressed file (case-sensitive): bzegrep "{{search_pattern}}" {{path/to/file}} Search for extended regular expressions (supporting ?, +, {}, () and |) in a compressed file (case-insensitive): bzegrep --ignore-case "{{search_pattern}}" {{path/to/file}} Search for lines that do not match a pattern: bzegrep --invert-match "{{search_pattern}}" {{path/to/file}} Print file name and line number for each match: bzegrep --with-filename --line-number "{{search_pattern}}" {{path/to/file}}
bzfgrep Find any fixed strings separated by new lines in bzip2 compressed files using fgrep. More information: https://manned.org/bzfgrep. Search for lines matching the list of search strings separated by new lines in a compressed file (case-sensitive): bzfgrep "{{search_string}}" {{path/to/file}} Search for lines matching the list of search strings separated by new lines in a compressed file (case-insensitive): bzfgrep --ignore-case "{{search_string}}" {{path/to/file}} Search for lines that do not match the list of search strings separated by new lines in a compressed file: bzfgrep --invert-match "{{search_string}}" {{path/to/file}}
bzgrep Find patterns in bzip2 compressed files using grep. More information: https://manned.org/bzgrep. Search for a pattern within a compressed file: bzgrep "{{search_pattern}}" {{path/to/file}} Use extended regular expressions (supports ?, +, {}, () and |), in case-insensitive mode: bzgrep --extended-regexp --ignore-case "{{search_pattern}}" {{path/to/file}} Print 3 lines of context around, before, or after each match: bzgrep --{{context|before-context|after-context}}={{3}} "{{search_pattern}}" {{path/to/file}} Print file name and line number for each match: bzgrep --with-filename --line-number "{{search_pattern}}" {{path/to/file}}
bzip2 A block-sorting file compressor. More information: https://manned.org/bzip2. Compress a file: bzip2 {{path/to/file_to_compress}} Decompress a file: bzip2 -d {{path/to/compressed_file.bz2}} Decompress a file to stdout: bzip2 -dc {{path/to/compressed_file.bz2}} Test the integrity of each file inside the archive file: bzip2 --test {{path/to/compressed_file.bz2}} Show the compression ratio for each file processed with detailed information: bzip2 --verbose {{path/to/compressed_files.bz2}} Decompress a file overwriting existing files: bzip2 --force {{path/to/compressed_file.bz2}} Display help: bzip2 -h
bzip3 An efficient statistical file compressor. More information: https://github.com/kspalaiologos/bzip3. Compress a file: bzip3 {{path/to/file_to_compress}} Decompress a file: bzip3 -d {{path/to/compressed_file.bz3}} Decompress a file to stdout: bzip3 -dc {{path/to/compressed_file.bz3}} Test the integrity of each file inside the archive file: bzip3 --test {{path/to/compressed_file.bz3}} Show the compression ratio for each file processed with detailed information: bzip3 --verbose {{path/to/compressed_files.bz3}} Decompress a file overwriting existing files: bzip3 --force {{path/to/compressed_file.bz3}} Display help: bzip3 -h
c99 Compiles C programs according to the ISO C standard. More information: https://manned.org/c99. Compile source file(s) and create an executable: c99 {{file.c}} Compile source file(s) and create an executable with a custom name: c99 -o {{executable_name}} {{file.c}} Compile source file(s) and create object file(s): c99 -c {{file.c}} Compile source file(s), link with object file(s), and create an executable: c99 {{file.c}} {{file.o}}
cabal Command-line interface to the Haskell package infrastructure (Cabal). Manage Haskell projects and Cabal packages from the Hackage package repository. More information: https://cabal.readthedocs.io/en/latest/intro.html. Search and list packages from Hackage: cabal list {{search_string}} Show information about a package: cabal info {{package}} Download and install a package: cabal install {{package}} Create a new Haskell project in the current directory: cabal init Build the project in the current directory: cabal build Run tests of the project in the current directory: cabal test
caddy An enterprise-ready open source web server with automatic HTTPS, written in Go. More information: https://caddyserver.com. Start Caddy in the foreground: caddy run Start Caddy with the specified Caddyfile: caddy run --config {{path/to/Caddyfile}} Start Caddy in the background: caddy start Stop a background Caddy process: caddy stop Run a simple file server on the specified port with a browsable interface: caddy file-server --listen :{{8000}} --browse Run a reverse proxy server: caddy reverse-proxy --from :{{80}} --to localhost:{{8000}}
cake The command-line processor for the CakePHP framework. More information: https://cakephp.org. Display basic information about the current app and available commands: cake Display a list of available routes: cake routes Clear configuration caches: cake cache clear_all Build the metadata cache: cake schema_cache build --connection {{connection}} Clear the metadata cache: cake schema_cache clear Clear a single cache table: cake schema_cache clear {{table_name}} Start a development web server (defaults to port 8765): cake server
calc An interactive arbitrary-precision calculator in the terminal. More information: https://github.com/lcn2/calc. Start calc in interactive mode: calc Perform a calculation in non-interactive mode: calc '{{85 * (36 / 4)}}' Perform a calculation without any output formatting (for use with pipes): calc -p '{{4/3 * pi() * 5^3}}' Perform a calculation and then switch to [i]nteractive mode: calc -i '{{sqrt(2)}}' Start calc in a specific permission [m]ode (0 to 7, defaults to 7): calc -m {{mode}}
calendar Display upcoming events from a calendar file. More information: https://www.commandlinux.com/man-page/man1/calendar.1.html. Show events for today and tomorrow (or the weekend on Friday) from the default calendar: calendar Look [A]head, showing events for the next 30 days: calendar -A {{30}} Look [B]ack, showing events for the previous 7 days: calendar -B {{7}} Show events from a custom calendar [f]ile: calendar -f {{path/to/file}}
calibre-server A server application that can be used to distribute e-books over a network. Note: e-books must already be imported into the library using the GUI or the calibredb CLI. More information: https://manual.calibre-ebook.com/generated/en/calibre-server.html. Start a server to distribute e-books. Access at http://localhost:8080: calibre-server Start server on different port. Access at http://localhost:port: calibre-server --port {{port}} Password protect the server: calibre-server --username {{username}} --password {{password}}
calibredb Tool to manipulate the your e-book database. Part of the Calibre e-book library. More information: https://manual.calibre-ebook.com/generated/en/calibredb.html. List e-books in the library with additional information: calibredb list Search for e-books displaying additional information: calibredb list --search {{search_term}} Search for just ids of e-books: calibredb search {{search_term}} Add one or more e-books to the library: calibredb add {{file1 file2 …}} Recursively add all e-books under a directory to the library: calibredb add -r {{path/to/directory}}
calligraflow Calligra’s flowchart and diagram application. See also: calligrastage, calligrawords, calligrasheets. More information: https://manned.org/calligraflow. Launch the flowchart and diagram application: calligraflow Open a specific file: calligraflow {{path/to/file}} Display help or version: calligraflow --{{help|version}}
calligrasheets Calligra’s spreadsheet application. See also: calligraflow, calligrastage, calligrawords. More information: https://manned.org/calligrasheets. Launch the spreadsheet application: calligrasheets Open a specific spreadsheet: calligrasheets {{path/to/spreadsheet}} Display help or version: calligrasheets --{{help|version}}
calligrastage Calligra’s presentation application. See also: calligraflow, calligrawords, calligrasheets. More information: https://manned.org/calligrastage. Launch the presentation application: calligrastage Open a specific presentation: calligrastage {{path/to/presentation}} Display help or version: calligrastage --{{help|version}}
calligrawords Calligra’s word processor application. See also: calligraflow, calligrastage, calligrasheets. More information: https://manned.org/calligrawords. Launch the word processor application: calligrawords Open a specific document: calligrawords {{path/to/document}} Display help or version: calligrawords --{{help|version}}
carbon-now Create beautiful images of code. More information: https://github.com/mixn/carbon-now-cli. Create an image from a file using default settings: carbon-now {{path/to/file}} Create an image from a text in clipboard using default settings: carbon-now --from-clipboard Create an image from stdin using default settings: {{input}} | carbon-now Create images interactively for custom settings and optionally save a preset: carbon-now -i {{path/to/file}} Create images from previously saved preset: carbon-now -p {{preset}} {{path/to/file}} Start at a specified line of text: carbon-now -s {{line}} {{path/to/file}}
cargo Manage Rust projects and their module dependencies (crates). Some subcommands such as cargo build have their own usage documentation. More information: https://doc.rust-lang.org/cargo. Search for crates: cargo search {{search_string}} Install a crate: cargo install {{crate_name}} List installed crates: cargo install --list Create a new binary or library Rust project in the current directory: cargo init --{{bin|lib}} Create a new binary or library Rust project in the specified directory: cargo new {{path/to/directory}} --{{bin|lib}}
cargo add Add dependencies to a Rust project’s Cargo.toml file. More information: https://doc.rust-lang.org/cargo/commands/cargo-add.html. Add the latest version of a dependency to the current project: cargo add {{dependency}} Add a specific version of a dependency: cargo add {{dependency}}@{{version}} Add a dependency and enable one or more specific features: cargo add {{dependency}} --features {{feature_1}},{{feature_2}} Add an optional dependency, which then gets exposed as a feature of the crate: cargo add {{dependency}} --optional
cargo build Compile a local package and all of its dependencies. More information: https://doc.rust-lang.org/cargo/commands/cargo-build.html. Build the package or packages defined by the Cargo.toml manifest file in the local path: cargo build Build artifacts in release mode, with optimizations: cargo build --release Require that Cargo.lock is up to date: cargo build --locked Build all packages in the workspace: cargo build --workspace Build a specific package: cargo build --package {{package}} Build only the specified binary: cargo build --bin {{name}}
cargo clippy A collection of lints to catch common mistakes and improve your Rust code. More information: https://github.com/rust-lang/rust-clippy. Run checks over the code in the current directory: cargo clippy Require that Cargo.lock is up to date: cargo clippy --locked Run checks on all packages in the workspace: cargo clippy --workspace Run checks for a package: cargo clippy --package {{package}} Treat warnings as errors: cargo clippy -- --deny warnings Run checks and ignore warnings: cargo clippy -- --allow warnings
cargo doc Build and view Rust package documentation offline. More information: https://doc.rust-lang.org/cargo/commands/cargo-doc.html. Build and view the default package documentation in the browser: cargo doc --open Build documentation without accessing the network: cargo doc --offline View a particular package’s documentation: cargo doc --open --package {{package}} View a particular package’s documentation offline: cargo doc --open --offline --package {{package}}
cargo rustc Compile a Rust package, and pass extra options to the compiler. More information: https://doc.rust-lang.org/cargo/commands/cargo-rustc.html. Build the package or packages defined by the Cargo.toml manifest file in the current working directory: cargo rustc Build artifacts in release mode, with optimizations: cargo rustc --release Compile with architecture-specific optimizations for the current CPU: cargo rustc --release -- -C target-cpu=native Compile with speed optimization: cargo rustc -- -C opt-level {{1|2|3}} Compile with [s]ize optimization (z also turns off loop vectorization): cargo rustc -- -C opt-level {{s|z}}
cargo test Execute the unit and integration tests of a Rust package. More information: https://doc.rust-lang.org/cargo/commands/cargo-test.html. Only run tests containing a specific string in their names: cargo test {{testname}} Set the number of simultaneous running test cases: cargo test -- --test-threads={{count}} Require that Cargo.lock is up to date: cargo test --locked Test artifacts in release mode, with optimizations: cargo test --release Test all packages in the workspace: cargo test --workspace Run tests for a package: cargo test --package {{package}}
carp REPL and build tool for Carp. More information: https://carp-lang.github.io/carp-docs/Manual.html. Start a REPL (interactive shell): carp Start a REPL with a custom prompt: carp --prompt "{{> }}" Build a carp file: carp -b {{path/to/file.carp}} Build and run a file: carp -x {{path/to/file.carp}} Build a file with optimizations enabled: carp -b --optimize {{path/to/file.carp}} Transpile a file to C code: carp --generate-only {{path/to/file.carp}}
case Bash builtin construct for creating multi-choice conditional statements. More information: https://www.gnu.org/software/bash/manual/bash.html#index-case. Match a variable against string literals to decide which command to run: case {{$tocount}} in {{words}}) {{wc -w README}}; ;; {{lines}}) {{wc -l README}}; ;; esac Combine patterns with |, use * as a fallback pattern: case {{$tocount}} in {{[wW]|words}}) {{wc -w README}}; ;; {{[lL]|lines}}) {{wc -l README}}; ;; *) {{echo "what?"}}; ;; esac
cat Print and concatenate files. More information: https://www.gnu.org/software/coreutils/cat. Print the contents of a file to stdout: cat {{path/to/file}} Concatenate several files into an output file: cat {{path/to/file1 path/to/file2 ...}} > {{path/to/output_file}} Append several files to an output file: cat {{path/to/file1 path/to/file2 ...}} >> {{path/to/output_file}} Copy the contents of a file into an output file without buffering: cat -u {{/dev/tty12}} > {{/dev/tty13}} Write stdin to a file: cat - > {{path/to/file}}
catimg Image printing in the terminal. See also: pixterm, chafa. More information: https://github.com/posva/catimg. Print a JPEG, PNG, or GIF to the terminal: catimg {{path/to/file}} Double the [r]esolution of an image: catimg -r 2 {{path/to/file}} Disable 24-bit color for better [t]erminal support: catimg -t {{path/to/file}} Specify a custom [w]idth or [H]eight: catimg {{-w|-H}} {{40}} {{path/to/file}}
cavif PNG/JPEG to AVIF converter. More information: https://github.com/kornelski/cavif-rs. Convert a JPEG file to AVIF: cavif {{path/to/file.jpg}} Adjust the image quality (1-100) and convert a PNG file to AVIF: cavif --quality {{60}} {{path/to/file.png}} Set the output location explicitly: cavif {{path/to/file.jpg}} --output {{path/to/file.avif}} Overwrite the destination file if it already exists: cavif --overwrite {{path/to/file.jpg}}
cb Cut, copy, and paste anything in the terminal. More information: https://github.com/Slackadays/Clipboard. Show all clipboards: cb Copy a file to the clipboard: cb copy {{path/to/file}} Copy some text to the clipboard: cb copy "{{Some example text}}" Copy piped data to the clipboard: echo "{{Some example text}}" | cb Paste clipboard content: cb paste Pipe out clipboard content: cb | cat Show clipboard history: cb history Show clipboard information: cb info
cbonsai Cbonsai is a beautifully random bonsai tree CLI generator. More information: https://gitlab.com/jallbrit/cbonsai. Generate a bonsai in live mode: cbonsai -l Generate a bonsai in infinite mode: cbonsai -i Append a message to the bonsai: cbonsai -m "{{message}}" Display extra information about the bonsai: cbonsai -v Display cbonsai help: cbonsai -h
cbt Utility for reading data from Google Cloud’s Bigtable. More information: https://cloud.google.com/bigtable/docs/cbt-reference. List tables in the current project: cbt ls Print count of rows in a specific table in the current project: cbt count "{{table_name}}" Display a single row from a specific table with only 1 (most recent) cell revision per column in the current project: cbt lookup "{{table_name}}" "{{row_key}}" cells-per-column={{1}} Display a single row with only specific column(s) (omit qualifier to return entire family) in the current project: cbt lookup "{{table_name}}" "{{row_key}}" columns="{{family1:qualifier1,family2:qualifier2,.
ccomps Decompose graphs into their connected components. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://graphviz.org/pdf/ccomps.1.pdf. Decompose one or more graphs into their connected components: ccomps {{path/to/input1.gv}} {{path/to/input2.gv ...}} > {{path/to/output.gv}} Print the number of nodes, edges, and connected components in one or more graphs: ccomps -v -s {{path/to/input1.gv}} {{path/to/input2.gv ...}} Write each connected component to numbered filenames based on output.gv: ccomps -x -o {{path/to/output.
cd Change the current working directory. More information: https://manned.org/cd. Go to the specified directory: cd {{path/to/directory}} Go up to the parent of the current directory: cd .. Go to the home directory of the current user: cd Go to the home directory of the specified user: cd ~{{username}} Go to the previously chosen directory: cd - Go to the root directory: cd /
cdk A CLI for AWS Cloud Development Kit (CDK). More information: https://docs.aws.amazon.com/cdk/latest/guide/cli.html. List the stacks in the app: cdk ls Synthesize and print the CloudFormation template for the specified stack(s): cdk synth {{stack_name}} Deploy a space-separated list of stacks: cdk deploy {{stack_name}} Destroy a space-separated list of stacks: cdk destroy {{stack_name}} Compare the specified stack with the deployed stack or a local CloudFormation template: cdk diff {{stack_name}} Create a new CDK project in the current directory for a specified language: cdk init -l {{language_name}}
certutil Manage keys and certificates in both NSS databases and other NSS tokens. More information: https://manned.org/certutil. Create a new certificate database: certutil -N -d . List all certificates in a database: certutil -L -d . List all private keys in a database: certutil -K -d . -f {{path/to/password_file.txt}} Import the signed certificate into the requesters database: certutil -A -n "{{server_certificate}}" -t ",," -i {{path/to/file.crt}} -d . Add subject alternative names to a given certificate: certutil -S -f {{path/to/password_file.
cf Command-line tool to manage apps and services on Cloud Foundry. More information: https://docs.cloudfoundry.org. Log in to the Cloud Foundry API: cf login -a {{api_url}} Push an app using the default settings: cf push {{app_name}} View the services available from your organization: cf marketplace Create a service instance: cf create-service {{service}} {{plan}} {{service_name}} Connect an application to a service: cf bind-service {{app_name}} {{service_name}} Run a script whose code is included in the app, but runs independently: cf run-task {{app_name}} "{{script_command}}" --name {{task_name}}
chafa Image printing in the terminal. See also: catimg, pixterm. More information: https://hpjansson.org/chafa. Render an image directly in the terminal: chafa {{path/to/file}} Render an image with 24-bit [c]olor: chafa -c full {{path/to/file}} Improve image rendering with small color palettes using dithering: chafa -c 16 --dither ordered {{path/to/file}} Render an image, making it appear pixelated: chafa --symbols vhalf {{path/to/file}} Render a monochrome image with only braille characters: chafa -c none --symbols braille {{path/to/file}}
charm Set of tools that makes adding a backend to your terminal-based applications, without worrying about user accounts, data storage and encryption. More information: https://github.com/charmbracelet/charm. Backup your Charm account keys: charm backup-keys Backup Charm account keys to a specific location: charm backup-keys -o {{path/to/output_file.tar}} Import previously backed up Charm account keys: charm import-keys "{{charm-keys-backup.tar}}" Find where your cloud.charm.sh folder resides on your machine: charm where Start your Charm server: charm serve
chars Display names and codes for various ASCII and Unicode characters and code points. More information: https://github.com/antifuchs/chars. Look up a character by its value: chars '{{ß}}' Look up a character by its Unicode code point: chars {{U+1F63C}} Look up possible characters given an ambiguous code point: chars {{10}} Look up a control character: chars "{{^C}}"
cheat Create and view interactive cheat sheets. More information: https://github.com/cheat/cheat. Show example usage of a command: cheat {{command}} Edit the cheat sheet for a command: cheat -e {{command}} List the available cheat sheets: cheat -l Search available the cheat sheets for a specified command name: cheat -s {{command}} Get the current cheat version: cheat -v
checksec Check security properties of executables. More information: https://github.com/slimm609/checksec.sh. List security properties of an executable binary file: checksec --file={{path/to/binary}} List security properties recursively of all executable files in a directory: checksec --dir={{path/to/directory}} List security properties of a process: checksec --proc={{pid}} List security properties of the running kernel: checksec --kernel
Chezmoi A multi-machine dotfile manager, written in Go. More information: https://chezmoi.io. Initialize chezmoi on your machine: chezmoi init Tell chezmoi to manage a dotfile: chezmoi add {{path/to/file}} Edit the source state of a tracked dotfile: chezmoi edit {{path/to/file}} See changes chezmoi would make: chezmoi diff Apply the changes: chezmoi -v apply Set chezmoi up on another machine by downloading existing dotfiles from a Git repository: chezmoi init {{https://example.com/path/to/repository.git}} Fetch the latest changes from a remote repository: chezmoi update
chgrp Change group ownership of files and directories. More information: https://www.gnu.org/software/coreutils/chgrp. Change the owner group of a file/directory: chgrp {{group}} {{path/to/file_or_directory}} Recursively change the owner group of a directory and its contents: chgrp -R {{group}} {{path/to/directory}} Change the owner group of a symbolic link: chgrp -h {{group}} {{path/to/symlink}} Change the owner group of a file/directory to match a reference file: chgrp --reference={{path/to/reference_file}} {{path/to/file_or_directory}}
chisel Create TCP tunnels. Includes both client and server. More information: https://github.com/jpillora/chisel. Run a Chisel server: chisel server Run a Chisel server listening to a specific port: chisel server -p {{server_port}} Run a chisel server that accepts authenticated connections using username and password: chisel server --auth {{username}}:{{password}} Connect to a Chisel server and tunnel a specific port to a remote server and port: chisel client {{server_ip}}:{{server_port}} {{local_port}}:{{remote_server}}:{{remote_port}} Connect to a Chisel server and tunnel a specific host and port to a remote server and port: chisel client {{server_ip}}:{{server_port}} {{local_host}}:{{local_port}}:{{remote_server}}:{{remote_port}}
chmod Change the access permissions of a file or directory. More information: https://www.gnu.org/software/coreutils/chmod. Give the [u]ser who owns a file the right to e ecute it: chmod u+x {{path/to/file}} Give the [u]ser rights to [r]ead and [w]rite to a file/directory: chmod u+rw {{path/to/file_or_directory}} Remove e ecutable rights from the [g]roup: chmod g-x {{path/to/file}} Give [a]ll users rights to [r]ead and e ecute: chmod a+rx {{path/to/file}} Give [o]thers (not in the file owner’s group) the same rights as the [g]roup: chmod o=g {{path/to/file}}
choose A human-friendly and fast alternative to cut and (sometimes) awk. More information: https://github.com/theryangeary/choose. Print the 5th item from a line (starting from 0): choose {{4}} Print the first, 3rd, and 5th item from a line, where items are separated by ‘:’ instead of whitespace: choose --field-separator '{{:}}' {{0}} {{2}} {{4}} Print everything from the 2nd to 5th item on the line, including the 5th: choose {{1}}:{{4}} Print everything from the 2nd to 5th item on the line, excluding the 5th: choose --exclusive {{1}}:{{4}}
chown Change user and group ownership of files and directories. More information: https://www.gnu.org/software/coreutils/chown. Change the owner user of a file/directory: chown {{user}} {{path/to/file_or_directory}} Change the owner user and group of a file/directory: chown {{user}}:{{group}} {{path/to/file_or_directory}} Recursively change the owner of a directory and its contents: chown -R {{user}} {{path/to/directory}} Change the owner of a symbolic link: chown -h {{user}} {{path/to/symlink}} Change the owner of a file/directory to match a reference file: chown --reference={{path/to/reference_file}} {{path/to/file_or_directory}}
chroma A general-purpose syntax highlighter. The --lexer option is usually unnecessary, as it will be automatically determined based on the file extension. More information: https://github.com/alecthomas/chroma. Highlight source code from a file with the Python lexer and output to stdout: chroma --lexer {{python}} {{path/to/source_file.py}} Highlight source code from a file with the Go lexer and output to an HTML file: chroma --lexer {{go}} --formatter {{html}} {{path/to/source_file.go}} > {{path/to/target_file.html}} Highlight source code from stdin with the C++ lexer and output to an SVG file, using the Monokai style: {{command}} | chroma --lexer {{c++}} --formatter {{svg}} --style {{monokai}} > {{path/to/target_file.
chromium Open-source web browser principally developed and maintained by Google. More information: https://www.chromium.org/developers/how-tos/run-chromium-with-flags/. Open a specific URL or file: chromium {{https://example.com|path/to/file.html}} Open in incognito mode: chromium --incognito {{example.com}} Open in a new window: chromium --new-window {{example.com}} Open in application mode (without toolbars, URL bar, buttons, etc.): chromium --app={{https://example.com}} Use a proxy server: chromium --proxy-server="{{socks5://hostname:66}}" {{example.com}} Open with a custom profile directory: chromium --user-data-dir={{path/to/directory}} Open without CORS validation (useful to test an API): chromium --user-data-dir={{path/to/directory}} --disable-web-security
chroot Run command or interactive shell with special root directory. More information: https://www.gnu.org/software/coreutils/chroot. Run command as new root directory: chroot {{path/to/new/root}} {{command}} Specify user and group (ID or name) to use: chroot --userspec={{user:group}}
chsh Change user’s login shell. More information: https://manned.org/chsh. Set a specific login shell for the current user interactively: chsh Set a specific login [s]hell for the current user: chsh -s {{path/to/shell}} Set a login [s]hell for a specific user: chsh -s {{path/to/shell}} {{username}} [l]ist available shells: chsh -l
circo Render an image of a circular network graph from a graphviz file. Layouts: dot, neato, twopi, circo, fdp, sfdp, osage & patchwork. More information: https://graphviz.org/doc/info/command.html. Render a png image with a filename based on the input filename and output format (uppercase -O): circo -T {{png}} -O {{path/to/input.gv}} Render a svg image with the specified output filename (lowercase -o): circo -T {{svg}} -o {{path/to/image.svg}} {{path/to/input.gv}} Render the output in ps, pdf, svg, fig, png, gif, jpg, json, or dot format: circo -T {{format}} -O {{path/to/input.
circup The CircuitPython library updater. More information: https://github.com/adafruit/circup. Interactively update modules on a device: circup update Install a new library: circup install {{library_name}} Search for a library: circup show {{partial_name}} List all libraries on a connected device in requirements.txt format: circup freeze Save all libraries on a connected device in the current directory: circup freeze -r
cksum Calculates CRC checksums and byte counts of a file. Note, on old UNIX systems the CRC implementation may differ. More information: https://www.gnu.org/software/coreutils/cksum. Display a 32-bit checksum, size in bytes and filename: cksum {{path/to/file}}
ClamAV Open-source anti-virus program. ClamAV isn’t a command, but a set of commands. More information: https://www.clamav.net. Show the tldr page for scan files using the clamd daemon: tldr clamdscan Show the tldr page for scan files without the clamd daemon running: tldr clamscan Show the tldr page for update the virus definitions: tldr freshclam
clamdscan A command-line virus scanner using the ClamAV Daemon. More information: https://docs.clamav.net/manual/Usage/Scanning.html#clamdscan. Scan a file or directory for vulnerabilities: clamdscan {{path/to/file_or_directory}} Scan data from stdin: {{command}} | clamdscan - Scan the current directory and output only infected files: clamdscan --infected Output the scan report to a log file: clamdscan --log {{path/to/log_file}} Move infected files to a specific directory: clamdscan --move {{path/to/quarantine_directory}} Remove infected files: clamdscan --remove Use multiple threads to scan a directory: clamdscan --multiscan
clamscan A command-line virus scanner. More information: https://docs.clamav.net/manual/Usage/Scanning.html#clamscan. Scan a file for vulnerabilities: clamscan {{path/to/file}} Scan all files recursively in a specific directory: clamscan -r {{path/to/directory}} Scan data from stdin: {{command}} | clamscan - Specify a virus database file or directory of files: clamscan --database {{path/to/database_file_or_directory}} Scan the current directory and output only infected files: clamscan --infected Output the scan report to a log file: clamscan --log {{path/to/log_file}} Move infected files to a specific directory: clamscan --move {{path/to/quarantine_directory}}
clang Compiler for C, C++, and Objective-C source files. Can be used as a drop-in replacement for GCC. More information: https://clang.llvm.org/docs/ClangCommandLineReference.html. Compile a source code file into an executable binary: clang {{input_source.c}} -o {{output_executable}} Activate output of all errors and warnings: clang {{input_source.c}} -Wall -o {{output_executable}} Include libraries located at a different path than the source file: clang {{input_source.c}} -o {{output_executable}} -I{{header_path}} -L{{library_path}} -l{{library_name}} Compile source code into LLVM Intermediate Representation (IR): clang -S -emit-llvm {{file.
clang-cpp This command is an alias of clang++. View documentation for the original command: tldr clang++
clang-format Tool to auto-format C/C++/Java/JavaScript/Objective-C/Protobuf/C# code. More information: https://clang.llvm.org/docs/ClangFormat.html. Format a file and print the result to stdout: clang-format {{path/to/file}} Format a file in-place: clang-format -i {{path/to/file}} Format a file using a predefined coding style: clang-format --style={{LLVM|GNU|Google|Chromium|Microsoft|Mozilla|WebKit}} {{path/to/file}} Format a file using the .clang-format file in one of the parent directories of the source file: clang-format --style=file {{path/to/file}} Generate a custom .clang-format file: clang-format --style={{LLVM|GNU|Google|Chromium|Microsoft|Mozilla|WebKit}} --dump-config > {{.clang-format}}
clang-tidy An LLVM-based C/C++ linter to find style violations, bugs and security flaws through static analysis. More information: https://clang.llvm.org/extra/clang-tidy/. Run default checks on a source file: clang-tidy {{path/to/file.cpp}} Don’t run any checks other than the cppcoreguidelines checks on a file: clang-tidy {{path/to/file.cpp}} -checks={{-*,cppcoreguidelines-*}} List all available checks: clang-tidy -checks={{*}} -list-checks Specify defines and includes as compilation options (after --): clang-tidy {{path/to/file.cpp}} -- -I{{my_project/include}} -D{{definitions}}
clang++ Compiles C++ source files. Part of LLVM. More information: https://clang.llvm.org. Compile a source code file into an executable binary: clang++ {{path/to/source.cpp}} -o {{path/to/output_executable}} Display (almost) all errors and warnings: clang++ {{path/to/source.cpp}} -Wall -o {{path/to/output_executable}} Choose a language standard to compile with: clang++ {{path/to/source.cpp}} -std={{c++20}} -o {{path/to/output_executable}} Include libraries located at a different path than the source file: clang++ {{path/to/source.cpp}} -o {{path/to/output_executable}} -I{{path/to/header_path}} -L{{path/to/library_path}} -l{{path/to/library_name}} Compile source code into LLVM Intermediate Representation (IR): clang++ -S -emit-llvm {{path/to/source.
clangd Language server that provides IDE-like features to editors. It should be used via an editor plugin rather than invoked directly. More information: https://clangd.llvm.org/. Display available options: clangd --help List of available options: clangd --help-list Display version: clangd --version
clash A rule-based tunnel in Go. More information: https://github.com/Dreamacro/clash/wiki. Specify a configuration [d]irectory: clash -d {{path/to/directory}} Specify a configuration [f]ile: clash -f {{path/to/configuration_file}}
clear Clears the screen of the terminal. More information: https://manned.org/clear. Clear the screen (equivalent to pressing Control-L in Bash shell): clear Clear the screen but keep the terminal’s scrollback buffer: clear -x Indicate the type of terminal to clean (defaults to the value of the environment variable TERM): clear -T {{type_of_terminal}} Show the version of ncurses used by clear: clear -V
clementine A modern music player and library organizer. More information: https://www.clementine-player.org. Open Clementine: clementine Start playing a music file: clementine {{url/or/path/to/file.ext}} Toggle between pausing and playing: clementine --play-pause Stop playback: clementine --stop Skip to the next track: clementine --next Skip to the previous track: clementine --previous Load a playlist file: clementine --load {{path/to/playlist.ext}} Play the 5th track in the currently loaded playlist: clementine --play-track {{5}}
clido Save-state TODO app for the terminal. More information: https://codeberg.org/Oglo12/clido/wiki. Create a list: clido --new {{name}} Load a list: clido --load {{name}} Delete a list: clido --remove {{name}} List all lists: clido --lists Toggle autowrite: clido toggle-autowrite Open a list in a text editor: clido edit {{text_editor}} Display version: clido -v Display help: clido -h
clifm The command-line file manager. More information: https://github.com/leo-arch/clifm. Start CliFM: clifm Open the file or directory whose ELN (entry list number) is 12: 12 Create a new file and a new directory: n file dir/ Search for PDF files in the current directory: /*.pdf Select all PNG files in the current directory: s *.png Remove the previously selected files (use t to send the files to the recycle bin instead): r sel
clip-view Command Line Interface Pages render. Render for a TlDr-like project with much a more extensive syntax and several render modes. More information: https://github.com/command-line-interface-pages/v2-tooling/tree/main/clip-view. Render specific local pages: clip-view {{path/to/page1.clip path/to/page2.clip ...}} Render specific remote pages: clip-view {{page_name1 page_name2 ...}} Render pages by a specific render: clip-view --render {{tldr|tldr-colorful|docopt|docopt-colorful}} {{page_name1 page_name2 ...}} Render pages with a specific color theme: clip-view --theme {{path/to/local_theme.yaml|remote_theme_name}} {{page_name1 page_name2 ...}} Clear a page or theme cache: clip-view --clear-{{page|theme}}-cache
clj Clojure tool to start a REPL or invoke a specific function with data. All options can be defined in a deps.edn file. More information: https://clojure.org/guides/deps_and_cli. Start a REPL (interactive shell): clj Execute a function: clj -X {{namespace/function_name}} Run the main function of a specified namespace: clj -M -m {{namespace}} {{args}} Prepare a project by resolving dependencies, downloading libraries, and making/caching classpaths: clj -P Start an nREPL server with the CIDER middleware: clj -Sdeps '{:deps {nrepl {:mvn/version "0.
cloc Count, and compute differences of, lines of source code and comments. More information: https://github.com/AlDanial/cloc. Count all the lines of code in a directory: cloc {{path/to/directory}} Count all the lines of code in a directory, displaying a progress bar during the counting process: cloc --progress=1 {{path/to/directory}} Compare 2 directory structures and count the differences between them: cloc --diff {{path/to/directory/one}} {{path/to/directory/two}} Ignore files that are ignored by VCS, such as files specified in .
clockwork-cli A command-line interface for the Clockwork PHP debugging framework. More information: https://github.com/ptrofimov/clockwork-cli. Monitor Clockwork logs for the current project: clockwork-cli Monitor Clockwork logs for a specific project: clockwork-cli {{path/to/directory}} Monitor Clockwork logs for multiple projects: clockwork-cli {{path/to/directory1 path/to/directory2 …}}
clojure This command is an alias of clj. View documentation for the original command: tldr clj
cloudflared Command-line tool to create a persistent connection to the Cloudflare network. More information: https://developers.cloudflare.com/argo-tunnel/. Authenticate and associate the connection to a domain in the Cloudflare account: cloudflared tunnel login Establish a tunnel to a host in Cloudflare from the local server: cloudflared tunnel --hostname {{hostname}} localhost:{{port_number}} Establish a tunnel to a host in Cloudflare from the local server, without verifying the local server’s certificate: cloudflared tunnel --hostname {{hostname}} localhost:{{port_number}} --no-tls-verify
cmake Cross-platform build automation system, that generates recipes for native build systems. More information: https://cmake.org/cmake/help/latest/manual/cmake.1.html. Generate a build recipe in the current directory with CMakeLists.txt from a project directory: cmake {{path/to/project_directory}} Generate a build recipe, with build type set to Release with CMake variable: cmake {{path/to/project_directory}} -D {{CMAKE_BUILD_TYPE=Release}} Generate a build recipe using generator_name as the underlying build system: cmake -G {{generator_name}} {{path/to/project_directory}} Use a generated recipe in a given directory to build artifacts: cmake --build {{path/to/build_directory}}
cmark Converts CommonMark Markdown formatted text to other formats. More information: https://github.com/commonmark/cmark. Render a CommonMark Markdown file to HTML: cmark --to html {{filename.md}} Convert data from stdin to LaTeX: cmark --to latex Convert straight quotes to smart quotes: cmark --smart --to html {{filename.md}} Validate UTF-8 characters: cmark --validate-utf8 {{filename.md}}
cmatrix Shows a scrolling Matrix like screen in the terminal. More information: https://github.com/abishekvashok/cmatrix. Enable asynchronous scrolling: cmatrix -a Display red text: cmatrix -C {{red}} Enable rainbow mode: cmatrix -r Set screen update delay to 2 centiseconds (20 milliseconds): cmatrix -u {{2}}
cmctl Manage cert-manager resources inside your cluster. Check cert signing status, approve/deny requests, and issue new certificate requests. More information: https://cert-manager.io/docs/usage/cmctl/. Check if the cert-manager API is ready: cmctl check api Check the status of a certificate: cmctl status certificate {{cert_name}} Create a new certificate request based on an existing certificate: cmctl create certificaterequest my-cr --from-certificate-file {{cert.yaml}} Create a new certificate request, fetch the signed certificate, and set a maximum wait time: cmctl create certificaterequest my-cr --from-certificate-file {{cert.
cmp Compare two files byte by byte. More information: https://www.gnu.org/software/diffutils/manual/html_node/Invoking-cmp.html. Output char and line number of the first difference between two files: cmp {{path/to/file1}} {{path/to/file2}} Output info of the first difference: char, line number, bytes, and values: cmp --print-bytes {{path/to/file1}} {{path/to/file2}} Output the byte numbers and values of every difference: cmp --verbose {{path/to/file1}} {{path/to/file2}} Compare files but output nothing, yield only the exit status: cmp --quiet {{path/to/file1}} {{path/to/file2}}
code Cross platform and extensible code editor. More information: https://github.com/microsoft/vscode. Start Visual Studio Code: code Open specific files/directories: code {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} Compare two specific files: code --diff {{path/to/file1}} {{path/to/file2}} Open specific files/directories in a new window: code --new-window {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} Install/uninstall a specific extension: code --{{install|uninstall}}-extension {{publisher.extension}} Print installed extensions: code --list-extensions Print installed extensions with their versions: code --list-extensions --show-versions Start the editor as a superuser (root) while storing user data in a specific directory: sudo code --user-data-dir {{path/to/directory}}
codespell Spellchecker for source code. More information: https://github.com/codespell-project/codespell. Check for typos in all text files in the current directory, recursively: codespell Correct all typos found in-place: codespell --write-changes Skip files with names that match the specified pattern (accepts a comma-separated list of patterns using wildcards): codespell --skip "{{pattern}}" Use a custom dictionary file when checking (--dictionary can be used multiple times): codespell --dictionary {{path/to/file.txt}} Do not check words that are listed in the specified file: codespell --ignore-words {{path/to/file.
coffee Executes CoffeeScript scripts or compiles them into JavaScript. More information: https://coffeescript.org#cli. Run a script: coffee {{path/to/file.coffee}} Compile to JavaScript and save to a file with the same name: coffee --compile {{path/to/file.coffee}} Compile to JavaScript and save to a given output file: coffee --compile {{path/to/file.coffee}} --output {{path/to/file.js}} Start a REPL (interactive shell): coffee --interactive Watch script for changes and re-run script: coffee --watch {{path/to/file.coffee}}
cola This command is an alias of git-cola. View documentation for the original command: tldr git-cola
colordiff A tool to colorize diff output. The Perl script colordiff is a wrapper for diff and produces the same output but with pretty syntax highlighting. Color schemes can be customized. More information: https://github.com/kimmel/colordiff. Compare files: colordiff {{file1}} {{file2}} Output in two columns: colordiff -y {{file1}} {{file2}} Ignore case differences in file contents: colordiff -i {{file1}} {{file2}} Report when two files are the same: colordiff -s {{file1}} {{file2}} Ignore white spaces: colordiff -w {{file1}} {{file2}}
colorls A Ruby gem that beautifies the terminal’s ls command, with color and font-awesome icons. More information: https://github.com/athityakumar/colorls. List files one per line: colorls -1 List all files, including hidden files: colorls --all Long format list (permissions, ownership, size, and modification date) of all files: colorls --long --all Only list directories: colorls --dirs
colorpicker A minimalist X11 colorpicker. Any mouse gesture except left click will exit the program. More information: https://github.com/ym1234/colorpicker. Launch colorpicker and print the hexadecimal and RGB value of each clicked pixel to stdout: colorpicker Only print the color of one clicked pixel and then exit: colorpicker --one-shot Print the color of each clicked pixel and quit when a key is pressed: colorpicker --quit-on-keypress Only print the RGB value: colorpicker --rgb
column Format stdin or a file into multiple columns. Columns are filled before rows; the default separator is a whitespace. More information: https://manned.org/column. Format the output of a command for a 30 characters wide display: printf "header1 header2\nbar foo\n" | column --output-width {{30}} Split columns automatically and auto-align them in a tabular format: printf "header1 header2\nbar foo\n" | column --table Specify the column delimiter character for the --table option (e.g. “,” for CSV) (defaults to whitespace): printf "header1,header2\nbar,foo\n" | column --table --separator {{,}}
comby Tool for structural code search and replace that supports many languages. More information: https://github.com/comby-tools/comby. Match and rewrite templates, and print changes: comby '{{assert_eq!(:[a], :[b])}}' '{{assert_eq!(:[b], :[a])}}' {{.rs}} Match and rewrite with rewrite properties: comby '{{assert_eq!(:[a], :[b])}}' '{{assert_eq!(:[b].Capitalize, :[a])}}' {{.rs}} Match and rewrite in-place: comby -in-place '{{match_pattern}}' '{{rewrite_pattern}}' Only perform matching and print matches: comby -match-only '{{match_pattern}}' ""
comm Select or reject lines common to two files. Both files must be sorted. More information: https://www.gnu.org/software/coreutils/comm. Produce three tab-separated columns: lines only in first file, lines only in second file and common lines: comm {{file1}} {{file2}} Print only lines common to both files: comm -12 {{file1}} {{file2}} Print only lines common to both files, reading one file from stdin: cat {{file1}} | comm -12 - {{file2}} Get lines only found in first file, saving the result to a third file: comm -23 {{file1}} {{file2}} > {{file1_only}}
command Command forces the shell to execute the program and ignore any functions, builtins and aliases with the same name. More information: https://manned.org/command. Execute the ls program literally, even if an ls alias exists: command {{ls}} Display the path to the executable or the alias definition of a specific command: command -v {{command_name}}
compare View the difference between 2 images. More information: https://imagemagick.org/script/compare.php. Compare 2 images: compare {{image1.png}} {{image2.png}} {{diff.png}} Compare 2 images using a custom metric: compare -verbose -metric {{PSNR}} {{image1.png}} {{image2.png}} {{diff.png}}
compgen A built-in command for auto-completion in Bash, which is called on pressing TAB key twice. More information: https://www.gnu.org/software/bash/manual/bash.html#index-compgen. List all commands that you could run: compgen -c List all aliases: compgen -a List all functions that you could run: compgen -A function Show shell reserved keywords: compgen -k See all available commands/aliases starting with ’ls': compgen -ac {{ls}}
complete Provides argument autocompletion to shell commands. More information: https://www.gnu.org/software/bash/manual/html_node/Programmable-Completion-Builtins.html. Apply a function that performs autocompletion to a command: complete -F {{function}} {{command}} Apply a command that performs autocompletion to another command: complete -C {{autocomplete_command}} {{command}} Apply autocompletion without appending a space to the completed word: complete -o nospace -F {{function}} {{command}}
composer A package-based dependency manager for PHP projects. More information: https://getcomposer.org/. Interactively create a composer.json file: composer init Add a package as a dependency for this project, adding it to composer.json: composer require {{user/package}} Install all the dependencies in this project’s composer.json and create composer.lock: composer install Uninstall a package from this project, removing it as a dependency from composer.json: composer remove {{user/package}} Update all the dependencies in this project’s composer.
composer-require-checker Analyze Composer dependencies for soft dependencies. More information: https://github.com/maglnet/ComposerRequireChecker. Analyze a Composer JSON file: composer-require-checker check {{path/to/composer.json}} Analyze a Composer JSON file with a specific configuration: composer-require-checker check --config-file {{path/to/config.json}} {{path/to/composer.json}}
conan The open source, decentralized and cross-platform package manager to create and share all your native binaries. Some subcommands such as conan frogarian have their own usage documentation. More information: https://conan.io/. Install packages based on conanfile.txt: conan install {{.}} Install packages and create configuration files for a specific generator: conan install -g {{generator}} Install packages, building from source: conan install {{.}} --build Search for locally installed packages: conan search {{package}}
conan frogarian Displays the conan frogarian. More information: https://docs.conan.io/. Display the conan frogarian: conan frogarian
conda Package, dependency and environment management for any programming language. Some subcommands such as conda create have their own usage documentation. More information: https://github.com/conda/conda. Create a new environment, installing named packages into it: conda create --name {{environment_name}} {{python=3.9 matplotlib}} List all environments: conda info --envs Load an environment: conda activate {{environment_name}} Unload an environment: conda deactivate Delete an environment (remove all packages): conda remove --name {{environment_name}} --all Install packages into the current environment: conda install {{python=3.
conda create Create new conda environments. More information: https://docs.conda.io/projects/conda/en/latest/commands/create.html. Create a new environment named py39, and install Python 3.9 and NumPy v1.11 or above in it: conda create --yes --name {{py39}} python={{3.9}} "{{numpy>=1.11}}" Make exact copy of an environment: conda create --clone {{py39}} --name {{py39-copy}} Create a new environment with a specified name and install a given package: conda create --name {{env_name}} {{package}}
conda install Install packages into an existing conda environment. More information: https://docs.conda.io/projects/conda/en/latest/commands/install.html. Install a single package into the currently active conda environment: conda install {{package}} Install a single package into the currently active conda environment using channel conda-forge: conda install -c conda-forge {{package}} Install a single package into the currently active conda environment using channel conda-forge and ignoring other channels: conda install -c conda-forge --override-channels {{package}} Install multiple packages: conda install {{package1 package2 .
consul Distributed key-value store with health checking and service discovery. Some subcommands such as consul kv have their own usage documentation. More information: https://www.consul.io/commands. Check the Consul version: consul --version Show general help: consul --help Show help for a sub-command: consul {{sub-command}} --help
consul-kv Distributed key-value store with health checking and service discovery. More information: https://learn.hashicorp.com/consul/getting-started/kv. Read a value from the key-value store: consul kv get {{key}} Store a new key-value pair: consul kv put {{key}} {{value}} Delete a key-value pair: consul kv delete {{key}}
convert ImageMagick image conversion tool. More information: https://imagemagick.org/script/convert.php. Convert an image from JPG to PNG: convert {{image.jpg}} {{image.png}} Scale an image 50% its original size: convert {{image.png}} -resize 50% {{image2.png}} Scale an image keeping the original aspect ratio to a maximum dimension of 640x480: convert {{image.png}} -resize 640x480 {{image2.png}} Horizontally append images: convert {{image1.png}} {{image2.png}} {{image3.png}} +append {{image123.png}} Vertically append images: convert {{image1.png}} {{image2.png}} {{image3.png}} -append {{image123.png}} Create a GIF from a series of images with 100ms delay between them: convert {{image1.
convmv Convert filenames (NOT file content) from one encoding to another. More information: https://www.j3e.de/linux/convmv/man/. Test filename encoding conversion (don’t actually change the filename): convmv -f {{from_encoding}} -t {{to_encoding}} {{input_file}} Convert filename encoding and rename the file to the new encoding: convmv -f {{from_encoding}} -t {{to_encoding}} --notest {{input_file}}
coproc Bash builtin for creating interactive asynchronous subshells. More information: https://www.gnu.org/software/bash/manual/bash.html#Coprocesses. Run a subshell asynchronously: coproc { {{command1; command2; ...}}; } Create a coprocess with a specific name: coproc {{name}} { {{command1; command2; ...}}; } Write to a specific coprocess stdin: echo "{{input}}" >&"${{{name}}[1]}" Read from a specific coprocess stdout: read {{variable}} <&"${{{name}}[0]}" Create a coprocess which repeatedly reads stdin and runs some commands on the input: coproc {{name}} { while read line; do {{command1; command2; .
copyq Clipboard manager with advanced features. More information: https://copyq.readthedocs.io/en/latest/command-line.html. Launch CopyQ to store clipboard history: copyq Show current clipboard content: copyq clipboard Insert raw text into the clipboard history: copyq add -- {{text1}} {{text2}} {{text3}} Insert text containing escape sequences (’\n’, ‘\t’) into the clipboard history: copyq add {{firstline\nsecondline}} Print the content of the first 3 items in the clipboard history: copyq read 0 1 2 Copy a file’s contents into the clipboard: copyq copy < {{file.
cordova Mobile apps with HTML, CSS & JS. More information: https://cordova.apache.org/docs/en/latest/guide/cli/. Create a Cordova project: cordova create {{path/to/directory}} {{package}} {{project_name}} Display the current workspace status: cordova info Add a Cordova platform: cordova platform add {{platform}} Remove a Cordova platform: cordova platform remove {{platform}} Add a Cordova plugin: cordova plugin add {{pluginid}} Remove a Cordova plugin: cordova plugin remove {{pluginid}}
core-validate-commit Validate commit messages for Node.js core. More information: https://github.com/nodejs/core-validate-commit. Validate the current commit: core-validate-commit Validate a specific commit: core-validate-commit {{commit_hash}} Validate a range of commits: git rev-list {{commit_hash}}..HEAD | xargs core-validate-commit List all validation rules: core-validate-commit --list List all valid Node.js subsystems: core-validate-commit --list-subsystem Validate the current commit formatting the output in tap format: core-validate-commit --tap Display help: core-validate-commit --help
corepack Zero-runtime-dependency package acting as bridge between Node projects and their package managers. More information: https://github.com/nodejs/corepack. Add the Corepack shims to the Node.js installation directory to make them available as global commands: corepack enable Add the Corepack shims to a specific directory: corepack enable --install-directory {{path/to/directory}} Remove the Corepack shims from the Node.js installation directory: corepack disable Prepare a specific package manager: corepack prepare {{package_manager}}@{{version}} --activate Prepare the package manager configured for the project in the current path: corepack prepare
cosign Container Signing, Verification and Storage in an OCI registry. More information: https://github.com/sigstore/cosign. Generate a key-pair: cosign generate-key-pair Sign a container and store the signature in the registry: cosign sign -key {{cosign.key}} {{image}} Sign a container image with a key pair stored in a Kubernetes secret: cosign sign -key k8s://{{namespace}}/{{key}} {{image}} Sign a blob with a local key pair file: cosign sign-blob --key {{cosign.key}} {{path/to/file}} Verify a container against a public key: cosign verify -key {{cosign.
cotton Markdown test specification runner. More information: https://github.com/chonla/cotton. Use a specific base URL: cotton -u {{base_url}} {{path/to/file}}.md Disable certificate verification (insecure mode): cotton -u {{base_url}} -i {{path/to/file}}.md Stop running when a test fails: cotton -u {{base_url}} -s {{path/to/file}}.md
couchdb Command-line interface for Apache CouchDB database server. More information: https://couchdb.apache.org. Start CouchDB: couchdb Start CouchDB interactive shell: couchdb -i Start CouchDB as a background process: couchdb -b Kill the background process (Note: It will respawn if needed): couchdb -k Shutdown the background process: couchdb -d
cowsay Print ASCII art (by default a cow) saying or thinking something. More information: https://github.com/tnalpgge/rank-amateur-cowsay. Print an ASCII cow saying “hello, world”: cowsay "{{hello, world}}" Print an ASCII cow saying text from stdin: echo "{{hello, world}}" | cowsay List all available art types: cowsay -l Print the specified ASCII art saying “hello, world”: cowsay -f {{art}} "{{hello, world}}" Print a dead thinking ASCII cow: cowthink -d "{{I'm just a cow, not a great thinker.
cp Copy files and directories. More information: https://www.gnu.org/software/coreutils/cp. Copy a file to another location: cp {{path/to/source_file.ext}} {{path/to/target_file.ext}} Copy a file into another directory, keeping the filename: cp {{path/to/source_file.ext}} {{path/to/target_parent_directory}} Recursively copy a directory’s contents to another location (if the destination exists, the directory is copied inside it): cp -R {{path/to/source_directory}} {{path/to/target_directory}} Copy a directory recursively, in verbose mode (shows files as they are copied): cp -vR {{path/to/source_directory}} {{path/to/target_directory}} Copy multiple files at once to a directory: cp -t {{path/to/destination_directory}} {{path/to/file1 path/to/file2 .
cpdf Manipulate PDF files. More information: https://www.coherentpdf.com/cpdfmanual/cpdfmanual.html. Select pages 1, 2, 3 and 6 from a source document and write those to a destination document: cpdf {{path/to/source_document.pdf}} {{1-3,6}} -o {{path/to/destination_document.pdf}} Merge two documents into a new one: cpdf -merge {{path/to/source_document_one.pdf}} {{path/to/source_document_two.pdf}} -o {{path/to/destination_document.pdf}} Show the bookmarks of a document: cpdf -list-bookmarks {{path/to/document.pdf}} Split a document into ten-page chunks, writing them to chunk001.pdf, chunk002.pdf, etc: cpdf -split {{path/to/document.pdf}} -o {{path/to/chunk%%%.pdf}} -chunk {{10}}
cpio Copies files in and out of archives. Supports the following archive formats: cpio’s custom binary, old ASCII, new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1 tar. More information: https://www.gnu.org/software/cpio. Take a list of file names from stdin and add them [o]nto an archive in cpio’s binary format: echo "{{file1}} {{file2}} {{file3}}" | cpio -o > {{archive.cpio}} Copy all files and directories in a directory and add them [o]nto an archive, in [v]erbose mode: find {{path/to/directory}} | cpio -ov > {{archive.
cppcheck A static analysis tool for C/C++ code. Instead of syntax errors, it focuses on the types of bugs that compilers normally do not detect. More information: http://cppcheck.sourceforge.net. Recursively check the current directory, showing progress on the screen and logging error messages to a file: cppcheck . 2> cppcheck.log Recursively check a given directory, and don’t print progress messages: cppcheck --quiet {{path/to/directory}} Check a given file, specifying which tests to perform (by default only errors are shown): cppcheck --enable={{error|warning|style|performance|portability|information|all}} {{path/to/file.
cppclean Find unused code in C++ projects. More information: https://github.com/myint/cppclean. Run in a project’s directory: cppclean {{path/to/project}} Run on a project where the headers are in the inc1/ and inc2/ directories: cppclean {{path/to/project}} --include-path={{inc1}} --include-path={{inc2}} Run on a specific file main.cpp: cppclean {{main.cpp}} Run on the current directory, excluding the “build” directory: cppclean {{.}} --exclude={{build}}
cradle The Cradle PHP framework. Some subcommands such as cradle install have their own usage documentation. More information: https://cradlephp.github.io. Connect to a server: cradle connect {{server_name}} Display general help: cradle help Display help for a specific command: cradle {{command}} help Execute a Cradle command: cradle {{command}}
cradle deploy Manage Cradle deployments. More information: https://cradlephp.github.io/docs/3.B.-Reference-Command-Line-Tools.html#deploy. Deploy Cradle to a server: cradle deploy production Deploy static assets to Amazon S3: cradle deploy s3 Deploy static assets including the Yarn “components” directory: cradle deploy s3 --include-yarn Deploy static assets including the “upload” directory: cradle deploy s3 --include-upload
cradle elastic Manage the Elasticsearch instances for a Cradle instance. More information: https://cradlephp.github.io/docs/3.B.-Reference-Command-Line-Tools.html#elastic. Truncate the Elasticsearch index: cradle elastic flush Truncate the Elasticsearch index for a specific package: cradle elastic flush {{package}} Submit the Elasticsearch schema: cradle elastic map Submit the Elasticsearch schema for a specific package: cradle elastic map {{package}} Populate the Elasticsearch indices for all packages: cradle elastic populate Populate the Elasticsearch indices for a specific package: cradle elastic populate {{package}}
cradle install Installs the Cradle PHP framework components. More information: https://cradlephp.github.io/docs/3.B.-Reference-Command-Line-Tools.html#install. Install Cradle’s components (User will be prompted for further details): cradle install Forcefully overwrite files: cradle install --force Skip running SQL migrations: cradle install --skip-sql Skip running package updates: cradle install --skip-versioning Use specific database details: cradle install -h {{hostname}} -u {{username}} -p {{password}}
cradle package Manage packages for a Cradle instance. More information: https://cradlephp.github.io/docs/3.B.-Reference-Command-Line-Tools.html#package. Display a list of available packages: cradle package list Search for a package: cradle package search {{package}} Install a package from Packagist: cradle package install {{package}} Install a specific version of a package: cradle package install {{package}} {{version}} Update a package: cradle package update {{package}} Update a package to a specific version: cradle package update {{package}} {{version}} Remove a specific package: cradle package remove {{package}}
cradle sql Manage Cradle SQL databases. More information: https://cradlephp.github.io/docs/3.B.-Reference-Command-Line-Tools.html#sql. Rebuild the database schema: cradle sql build Rebuild the database schema for a specific package: cradle sql build {{package}} Empty the entire database: cradle sql flush Empty the database tables for a specific package: cradle sql flush {{package}} Populate the tables for all packages: cradle sql populate Populate the tables for a specific package: cradle sql populate {{package}}
createdb Create a PostgreSQL database. More information: https://www.postgresql.org/docs/current/app-createdb.html. Create a database owned by the current user: createdb {{database_name}} Create a database owned by a specific user with a description: createdb --owner={{username}} {{database_name}} '{{description}}' Create a database from a template: createdb --template={{template_name}} {{database_name}}
crictl Command-line for CRI-compatible container runtimes. More information: https://github.com/kubernetes-sigs/cri-tools/blob/master/docs/crictl.md. List all kubernetes pods (Ready and NotReady): crictl pods List all containers (Running and Exited): crictl ps --all List all images: crictl images Print information about specific containers: crictl inspect {{container_id1 container_id2 ...}} Open a specific shell inside a running container: crictl exec -it {{container_id}} {{sh}} Pull a specific image from a registry: crictl pull {{image:tag}} Print and [f]ollow logs of a specific container: crictl logs -f {{container_id}}
croc Send and receive files easily and securely over any network. More information: https://github.com/schollz/croc. Send a file or directory: croc send {{path/to/file_or_directory}} Send a file or directory with a specific passphrase: croc send --code {{passphrase}} {{path/to/file_or_directory}} Receive a file or directory on receiving machine: croc {{passphrase}} Send and connect over a custom relay: croc --relay {{ip_to_relay}} send {{path/to/file_or_directory}} Receive and connect over a custom relay: croc --relay {{ip_to_relay}} {{passphrase}} Host a croc relay on the default ports: croc relay
cron cron is a system scheduler for running jobs or tasks unattended. The command to submit, edit or delete entries to cron is called crontab. View documentation for the original command: tldr crontab
cronic Bash script for wrapping cron jobs to prevent excess email sending. More information: https://habilis.net/cronic/. Call a command and display its output if it returns a non-zero exit code: cronic {{command}}
crontab Schedule cron jobs to run on a time interval for the current user. More information: https://crontab.guru/. Edit the crontab file for the current user: crontab -e Edit the crontab file for a specific user: sudo crontab -e -u {{user}} Replace the current crontab with the contents of the given file: crontab {{path/to/file}} View a list of existing cron jobs for current user: crontab -l Remove all cron jobs for the current user: crontab -r
crunch Wordlist generator. More information: https://sourceforge.net/projects/crunch-wordlist/. Output a list of words of length 1 to 3 with only lowercase characters: crunch {{1}} {{3}} Output a list of hexadecimal words of length 8: crunch {{8}} {{8}} {{0123456789abcdef}} Output a list of all permutations of abc (lengths are not processed): crunch {{1}} {{1}} -p {{abc}} Output a list of all permutations of the given strings (lengths are not processed): crunch {{1}} {{1}} -p {{abc}} {{def}} {{ghi}}
cryfs A cryptographic filesystem for the cloud. More information: https://www.cryfs.org/. Mount an encrypted filesystem. The initialization wizard will be started on the first execution: cryfs {{path/to/cipher_dir}} {{path/to/mount_point}} Unmount an encrypted filesystem: cryfs-unmount {{path/to/mount_point}} Automatically unmount after ten minutes of inactivity: cryfs --unmount-idle {{10}} {{path/to/cipher_dir}} {{path/to/mount_point}} Show a list of supported ciphers: cryfs --show-ciphers
crystal Tool for managing Crystal source code. More information: https://crystal-lang.org/reference/using_the_compiler. Run a Crystal file: crystal {{path/to/file.cr}} Compile a file and all dependencies to a single executable: crystal build {{path/to/file.cr}} Start a local interactive server for testing the language: crystal play Create a project directory for a Crystal application: crystal init app {{application_name}} Display all help options: crystal help
coursier Application and artifact manager for the Scala language, it can install Scala applications and setup your Scala development environment. Some subcommands such as install, launch, java, fetch, resolve, complete-dep, etc. have their own usage documentation. More information: https://get-coursier.io/docs/overview. Display version: cs version Show a list of the installed applications: cs list Install a specific application: cs install {{application_name}} Uninstall a specific application: cs uninstall {{application_name}} Setup machine for the Scala development: cs setup
cs complete dep Search for libraries without doing it directly on the web. More information: https://get-coursier.io/docs/cli-complete. Print which artifacts are published under a specific Maven group identifier: cs complete-dep {{group_id}} List published library versions under a specific Maven group identifier and an artifact one: cs complete-dep {{group_id}}:{{artifact_id}} Print which artifacts are pubblished under a given Maven groupId searching in the ivy2local: cs complete-dep {{group_id}} --repository ivy2local List published artifacts under a Maven group identifier searching in a specific repository and credentials: cs complete-dep {{group_id}}:{{artifact_id}} --repository {{repository_url}} --credentials {{user}}:{{password}}
cs fetch Fetch fetches the JARs of one or more dependencies. More information: https://get-coursier.io/docs/cli-fetch. Fetch a specific version of a jar: cs fetch {{group_id}}:{{artifact_id}}:{{artifact_version}} Fetch a package and evaluate the classpath corresponding to the selected package in an env var: CP="$(cs fetch --classpath org.scalameta::scalafmt-cli:latest.release)" Fetch a source of a specific jar: cs fetch --sources {{group_id}}:{{artifact_id}}:{{artifact_version}} Fetch the javadoc jars: cs fetch --javadoc {{group_id}}:{{artifact_id}}:{{artifact_version}} Fetch dependency with javadoc jars and source jars: cs fetch --default={{true}} --sources --javadoc {{group_id}}:{{artifact_id}}:{{artifact_version}}
cs install Install an application in the installation directory onfigured when installing cs (to enable the binary to be loaded add to your .bash_profile the $ eval "$(cs install --env)" command). More information: https://get-coursier.io/docs/cli-install. Install a specific application: cs install {{application_name}} Install a specific version of an application: cs install {{application_name}}:{{application_version}} Search an application by a specific name: cs search {{application_partial_name}} Update a specific application if available: cs update {{application_name}}
cs java The java and java-home commands fetch and install JVMs. The java command runs them too. More information: https://get-coursier.io/docs/cli-java. Call the java version by using coursier: cs java -version Call a specific java version with custom properties using coursier: cs java --jvm {{jvm_name}}:{{jvm_version}} -Xmx32m -X{{another_jvm_opt}} -jar {{path/to/jar_name.jar}} List all the available JVM in the coursier default index: cs java --available List all the installed JVM in the system with his own location: cs java --installed
cs launch Launch an application from the name directly from one or more Maven dependencies without the need of installing it. More information: https://get-coursier.io/docs/cli-launch. Launch a specific application with arguments: cs launch {{application_name}} -- {{argument1 argument2 ...}} Launch a specific application version with arguments: cs launch {{application_name}}:{{application_version}} -- {{argument1 argument2 ...}} Launch a specific version of an application specifying which is the main file: cs launch {{group_id}}:{{artifact_id}}:{{artifact_version}} --main-class {{path/to/main_class_file}} Launch an application with specific java options and a jvm memory ones: cs launch --java-opt {{-Doption_name1:option_value1 -Doption_name2:option_value2 .
cs resolve Resolve lists the transitive dependencies of one or more other dependencies. More information: https://get-coursier.io/docs/cli-resolve. Resolve lists of transitive dependencies of two dependencies: cs resolve {{group_id1}}:{{artifact_id1}}:{{artifact_version1}} {{group_id2}}:{{artifact_id2}}:{{artifact_version2}} Resolve lists of transitive dependencies of a package by the dependency tree: cs resolve --tree {{group_id}}:{{artifact_id}}:{{artifact_version}} Resolve dependency tree in a reverse order (from a dependency to its dependencies): cs resolve --reverse-tree {{group_id}}:{{artifact_id}}:{{artifact_version} Print all the libraries that depends on a specific library: cs resolve {{group_id}}:{{artifact_id}}:{{artifact_version}} --what-depends-on {{searched_group_id}}:{{searched_artifact_id}}
csc The Microsoft C# Compiler. More information: https://learn.microsoft.com/dotnet/csharp/language-reference/compiler-options/command-line-building-with-csc-exe. Compile one or more C# files to a CIL executable: csc {{path/to/input_file_a.cs}} {{path/to/input_file_b.cs}} Specify the output filename: csc /out:{{path/to/filename}} {{path/to/input_file.cs}} Compile into a .dll library instead of an executable: csc /target:library {{path/to/input_file.cs}} Reference another assembly: csc /reference:{{path/to/library.dll}} {{path/to/input_file.cs}} Embed a resource: csc /resource:{{path/to/resource_file}} {{path/to/input_file.cs}} Automatically generate XML documentation: csc /doc:{{path/to/output.xml}} {{path/to/input_file.cs}} Specify an icon: csc /win32icon:{{path/to/icon.ico}} {{path/to/input_file.cs}} Strongly-name the resulting assembly with a keyfile: csc /keyfile:{{path/to/keyfile}} {{path/to/input_file.
csh The shell (command interpreter) with C-like syntax. See also: tcsh. More information: https://www.mkssoftware.com/docs/man1/csh.1.asp. Start an interactive shell session: csh Start an interactive shell session without loading startup configs: csh -f Execute specific [c]ommands: csh -c "{{echo 'csh is executed'}}" Execute a specific script: csh {{path/to/script.csh}}
csslint A linter for CSS code. More information: https://github.com/CSSLint/csslint/wiki/Command-line-interface. Lint a single CSS file: csslint {{file.css}} Lint multiple CSS files: csslint {{file1.css}} {{file2.css}} {{file3.css}} List all possible style rules: csslint --list-rules Specify certain rules as errors (which result in a non-zero exit code): csslint --errors={{errors,universal-selector,imports}} {{file.css}} Specify certain rules as warnings: csslint --warnings={{box-sizing,selector-max,floats}} {{file.css}} Specify certain rules to ignore: csslint --ignore={{ids,rules-count,shorthand}} {{file.css}}
csv-diff View differences between two CSV, TSV or JSON files. More information: https://github.com/simonw/csv-diff. Display a human-readable summary of differences between files using a specific column as a unique identifier: csv-diff {{path/to/file1.csv}} {{path/to/file2.csv}} --key={{column_name}} Display a human-readable summary of differences between files that includes unchanged values in rows with at least one change: csv-diff {{path/to/file1.csv}} {{path/to/file2.csv}} --key={{column_name}} --show-unchanged Display a summary of differences between files in JSON format using a specific column as a unique identifier: csv-diff {{path/to/file1.
csv2tsv Convert CSV (comma-separated) text to TSV (tab-separated) format. More information: https://github.com/eBay/tsv-utils/blob/master/README.md#csv2tsv. Convert from CSV to TSV: csv2tsv {{path/to/input_csv1 path/to/input_csv2 ...}} > {{path/to/output_tsv}} Convert field delimiter separated CSV to TSV: csv2tsv -c'{{field_delimiter}}' {{path/to/input_csv}} Convert semicolon separated CSV to TSV: csv2tsv -c';' {{path/to/input_csv}}
csvclean Finds and cleans common syntax errors in CSV files. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvclean.html. Clean a CSV file: csvclean {{bad.csv}} List locations of syntax errors in a CSV file: csvclean -n {{bad.csv}}
csvcut Filter and truncate CSV files. Like Unix’s cut command, but for tabular data. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvcut.html. Print indices and names of all columns: csvcut -n {{data.csv}} Extract the first and third columns: csvcut -c {{1,3}} {{data.csv}} Extract all columns except the fourth one: csvcut -C {{4}} {{data.csv}} Extract the columns named “id” and “first name” (in that order): csvcut -c {{id,"first name"}} {{data.csv}}
csvformat Convert a CSV file to a custom output format. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvformat.html. Convert to a tab-delimited file (TSV): csvformat -T {{data.csv}} Convert delimiters to a custom character: csvformat -D "{{custom_character}}" {{data.csv}} Convert line endings to carriage return (^M) + line feed: csvformat -M "{{\r\n}}" {{data.csv}} Minimize use of quote characters: csvformat -U 0 {{data.csv}} Maximize use of quote characters: csvformat -U 1 {{data.csv}}
csvgrep Filter CSV rows with string and pattern matching. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvgrep.html. Find rows that have a certain string in column 1: csvgrep -c {{1}} -m {{string_to_match}} {{data.csv}} Find rows in which columns 3 or 4 match a certain regular expression: csvgrep -c {{3,4}} -r {{regular_expression}} {{data.csv}} Find rows in which the “name” column does NOT include the string “John Doe”: csvgrep -i -c {{name}} -m "{{John Doe}}" {{data.
csvkit Manipulation toolkit for CSV files. See also: csvclean, csvcut, csvformat, csvgrep, csvlook, csvpy, csvsort, csvstat. More information: https://csvkit.readthedocs.io/en/0.9.1/cli.html. Run a command on a CSV file with a custom delimiter: {{command}} -d {{delimiter}} {{path/to/file.csv}} Run a command on a CSV file with a tab as a delimiter (overrides -d): {{command}} -t {{path/to/file.csv}} Run a command on a CSV file with a custom quote character: {{command}} -q {{quote_char}} {{path/to/file.csv}} Run a command on a CSV file with no header row: {{command}} -H {{path/to/file.
csvlook Render a CSV file in the console as a fixed-width table. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvlook.html. View a CSV file: csvlook {{data.csv}}
csvpy Loads a CSV file into a Python shell. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvpy.html. Load a CSV file into a CSVKitReader object: csvpy {{data.csv}} Load a CSV file into a CSVKitDictReader object: csvpy --dict {{data.csv}}
csvsort Sorts CSV files. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvsort.html. Sort a CSV file by column 9: csvsort -c {{9}} {{data.csv}} Sort a CSV file by the “name” column in descending order: csvsort -r -c {{name}} {{data.csv}} Sort a CSV file by column 2, then by column 4: csvsort -c {{2,4}} {{data.csv}} Sort a CSV file without inferring data types: csvsort --no-inference -c {{columns}} {{data.csv}}
csvsql Generate SQL statements for a CSV file or execute those statements directly on a database. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvsql.html. Generate a CREATE TABLE SQL statement for a CSV file: csvsql {{path/to/data.csv}} Import a CSV file into an SQL database: csvsql --insert --db "{{mysql://user:password@host/database}}" {{data.csv}} Run an SQL query on a CSV file: csvsql --query "{{select * from 'data'}}" {{data.csv}}
csvstat Print descriptive statistics for all columns in a CSV file. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/csvstat.html. Show all stats for all columns: csvstat {{data.csv}} Show all stats for columns 2 and 4: csvstat -c {{2,4}} {{data.csv}} Show sums for all columns: csvstat --sum {{data.csv}} Show the max value length for column 3: csvstat -c {{3}} --len {{data.csv}} Show the number of unique values in the “name” column: csvstat -c {{name}} --unique {{data.
csvtool Utility to filter and extract data from CSV formatted sources. More information: https://github.com/maroofi/csvtool. Extract the second column from a CSV file: csvtool --column {{2}} {{path/to/file.csv}} Extract the second and fourth columns from a CSV file: csvtool --column {{2,4}} {{path/to/file.csv}} Extract lines from a CSV file where the second column exactly matches ‘Foo’: csvtool --column {{2}} --search '{{^Foo$}}' {{path/to/file.csv}} Extract lines from a CSV file where the second column starts with ‘Bar’: csvtool --column {{2}} --search '{{^Bar}}' {{path/to/file.
ctags Generates an index (or tag) file of language objects found in source files for many popular programming languages. More information: https://ctags.io/. Generate tags for a single file, and output them to a file named “tags” in the current directory, overwriting the file if it exists: ctags {{path/to/file}} Generate tags for all files in the current directory, and output them to a specific file, overwriting the file if it exists: ctags -f {{path/to/file}} *
ctest CMake test driver program. More information: https://gitlab.kitware.com/cmake/community/wikis/doc/ctest/Testing-With-CTest. Run all tests defined in the CMake project, executing 4 jobs at a time in parallel: ctest -j{{4}} --output-on-failure Show a list of available tests: ctest -N Run a single test based on its name, or filter on a regular expression: ctest --output-on-failure -R '^{{test_name}}$'
cups-config Show technical information about your CUPS print server installation. More information: https://www.cups.org/doc/man-cups-config.html. Show the currently installed version of CUPS: cups-config --version Show where CUPS is currently installed: cups-config --serverbin Show the location of CUPS’ configuration directory: cups-config --serverroot Show the location of CUPS’ data directory: cups-config --datadir Display all available options: cups-config --help
cupsd Server daemon for the CUPS print server. More information: https://www.cups.org/doc/man-cupsd.html. Start cupsd in the background, aka. as a daemon: cupsd Start cupsd on the [f]oreground: cupsd -f [l]aunch cupsd on-demand (commonly used by launchd or systemd): cupsd -l Start cupsd using the specified [c]upsd.conf configuration file: cupsd -c {{path/to/cupsd.conf}} Start cupsd using the specified cups-file[s].conf configuration file: cupsd -s {{path/to/cups-files.conf}} [t]est the [c]upsd.conf configuration file for errors: cupsd -t -c {{path/to/cupsd.
curl Transfers data from or to a server. Supports most protocols, including HTTP, FTP, and POP3. More information: https://curl.se/docs/manpage.html. Download the contents of a URL to a file: curl {{http://example.com}} --output {{path/to/file}} Download a file, saving the output under the filename indicated by the URL: curl --remote-name {{http://example.com/filename}} Download a file, following location redirects, and automatically continuing (resuming) a previous file transfer and return an error on server error: curl --fail --remote-name --location --continue-at - {{http://example.
cut Cut out fields from stdin or files. More information: https://www.gnu.org/software/coreutils/cut. Print a specific character/field range of each line: {{command}} | cut --{{characters|fields}}={{1|1,10|1-10|1-|-10}} Print a range of each line with a specific delimiter: {{command}} | cut --delimiter="{{,}}" --{{fields}}={{1}} Print a range of each line of the specific file: cut --{{characters}}={{1}} {{path/to/file}}
cvs Concurrent Versions System, a revision control system. More information: https://cvs.nongnu.org. Create a new repository (requires the CVSROOT environment variable to be set externally): cvs -d {{path/to/repository}} init Add a project to the repository: cvs import -m "{{message}}" {{project_name}} {{version}} {{vendor}} Checkout a project: cvs checkout {{project_name}} Show changes made to files: cvs diff {{path/to/file}} Add a file: cvs add {{path/to/file}} Commit a file: cvs commit -m "{{message}}" {{path/to/file}} Update the working directory from the remote repository: cvs update
cwebp Compress an image file to a WebP file. More information: https://developers.google.com/speed/webp/docs/cwebp. Compress a WebP file with default settings (q = 75) to the [o]utput file: cwebp {{path/to/image_file}} -o {{path/to/output.webp}} Compress a WebP file with the best [q]uality and largest file size: cwebp {{path/to/image_file}} -o {{path/to/output.webp}} -q {{100}} Compress a WebP file with the worst [q]uality and smallest file size: cwebp {{path/to/image_file}} -o {{path/to/output.webp}} -q {{0}} Compress a WebP file and apply resize to image: cwebp {{path/to/image_file}} -o {{path/to/output.
czkawka-cli Command-line version of czkawka a multi-functional app to find duplicates, empty folders, similar images and much more. More information: https://github.com/qarmin/czkawka. List duplicate or similar files in specific directories: czkawka-cli {{dup|image}} --directories {{path/to/directory1 path/to/directory2 ...}} Find duplicate files in specific directories and delete them (default: NONE): czkawka-cli dup --directories {{path/to/directory1 path/to/directory2 ...}} --delete-method {{AEN|AEO|ON|OO|HARD|NONE}}
d8 Developer shell for the V8 JavaScript engine. More information: https://v8.dev/docs/d8. Start a REPL (interactive shell): d8 Run a JavaScript file: d8 {{path/to/file.js}} Evaluate a JavaScript expression: d8 -e "{{code}}
daps DAPS is an open source program for transforming DocBook XML into output formats such as HTML or PDF. More information: https://opensuse.github.io/daps/doc/index.html. Check if a DocBook XML file is valid: daps -d {{path/to/file.xml}} validate Convert a DocBook XML file into PDF: daps -d {{path/to/file.xml}} pdf Convert a DocBook XML file into a single HTML file: daps -d {{path/to/file.xml}} html --single Display help: daps --help Display version: daps --version
darkhttpd Darkhttpd web server. More information: https://unix4lyfe.org/darkhttpd. Start server serving the specified document root: darkhttpd {{path/to/docroot}} Start server on specified port (port 8080 by default if running as non-root user): darkhttpd {{path/to/docroot}} --port {{port}} Listen only on specified IP address (by default, the server listens on all interfaces): darkhttpd {{path/to/docroot}} --addr {{ip_address}}
dart The tool for managing Dart projects. More information: https://dart.dev/tools/dart-tool. Initialize a new Dart project in a directory of the same name: dart create {{project_name}} Run a Dart file: dart run {{path/to/file.dart}} Download dependencies for the current project: dart pub get Run unit tests for the current project: dart test Update an outdated project’s dependencies to support null-safety: dart pub upgrade --null-safety Compile a Dart file to a native binary: dart compile exe {{path/to/file.
dash Debian Almquist Shell, a modern, POSIX-compliant implementation of sh (not Bash-compatible). More information: https://manned.org/dash. Start an interactive shell session: dash Execute specific [c]ommands: dash -c "{{echo 'dash is executed'}}" Execute a specific script: dash {{path/to/script.sh}} Check a specific script for syntax errors: dash -n {{path/to/script.sh}} Execute a specific script while printing each command before executing it: dash -x {{path/to/script.sh}} Execute a specific script and stop at the first [e]rror: dash -e {{path/to/script.
datashader_cli Quick visualization of large datasets using CLI based on datashader. More information: https://github.com/wybert/datashader-cli. Create a shaded scatter plot of points and save it to a png file and set the background color: datashader_cli points {{path/to/input.parquet}} --x {{pickup_x}} --y {{pickup_y}} {{path/to/output.png}} --background {{black|white|#rrggbb}} Visualize the geospatial data (supports Geoparquet, shapefile, geojson, geopackage, etc.): datashader_cli points {{path/to/input_data.geo.parquet}} {{path/to/output_data.png}} --geo true Use matplotlib to render the image: datashader_cli points {{path/to/input_data.geo.parquet}} {{path/to/output_data.png}} --geo {{true}} --matplotlib true
date Set or display the system date. More information: https://www.gnu.org/software/coreutils/date. Display the current date using the default locale’s format: date +%c Display the current date in UTC, using the ISO 8601 format: date -u +%Y-%m-%dT%H:%M:%S%Z Display the current date as a Unix timestamp (seconds since the Unix epoch): date +%s Convert a date specified as a Unix timestamp to the default format: date -d @{{1473305798}} Convert a given date to the Unix timestamp format: date -d "{{2018-09-01 00:00}}" +%s --utc
dc An arbitrary precision calculator. Uses reverse polish notation (RPN). See also: bc. More information: https://www.gnu.org/software/bc/manual/dc-1.05/html_mono/dc.html. Start an interactive session: dc Execute a script: dc {{path/to/script.dc}} Calculate an expression with the specified scale: dc --expression='{{10}} k {{5 3 /}} p' Calculate 4 times 5 (4 5 *), subtract 17 (17 -), and [p]rint the output: dc --expression='4 5 * 17 - p' Set number of decimal places to 7 (7 k), calculate 5 divided by -3 (5 _3 /) and [p]rint: dc --expression='7 k 5 _3 / p'
dcfldd Enhanced version of dd for forensics and security. More information: http://dcfldd.sourceforge.net/. Copy a disk to a raw image file and hash the image using SHA256: dcfldd if=/dev/{{disk_device}} of={{file.img}} hash=sha256 hashlog={{file.hash}} Copy a disk to a raw image file, hashing each 1 GB chunk: dcfldd if=/dev/{{disk_device}} of={{file.img}} hash={{sha512|sha384|sha256|sha1|md5}} hashlog={{file.hash}} hashwindow={{1G}}
dcg Drupal code generator. More information: https://github.com/Chi-teck/drupal-code-generator. Start a wizard to choose what kind of code (e.g. module, service, form, etc.) to generate: dcg Directly specify the kind of code to generate: dcg {{service|plugin|theme|module|form}} Generate the code in a specific directory: dcg --directory {{path/to/directory}}
dcode Recursively detect and decode strings, supporting hex, decimal, binary, base64, URL, FromChar encodings, Caesar ciphers, and MD5, SHA1, and SHA2 hashes. Warning: uses 3rd-party web services for MD5, SHA1 and SHA2 hash lookups. For sensitive data, use -s to avoid these services. More information: https://github.com/s0md3v/Decodify. Recursively detect and decode a string: dcode "{{NjM3YTQyNzQ1YTQ0NGUzMg==}}" Rotate a string by the specified offset: dcode -rot {{11}} "{{spwwz hzcwo}}" Rotate a string by all 26 possible offsets: dcode -rot {{all}} "{{bpgkta xh qtiitg iwpc sr}}"
dd Convert and copy a file. More information: https://www.gnu.org/software/coreutils/dd. Make a bootable USB drive from an isohybrid file (such like archlinux-xxx.iso): dd if={{path/to/file.iso}} of=/dev/{{usb_drive}} Clone a drive to another drive with 4 MiB block and ignore error: dd if=/dev/{{source_drive}} of=/dev/{{dest_drive}} bs={{4194304}} conv={{noerror}} Generate a file of 100 random bytes by using kernel random driver: dd if=/dev/urandom of={{path/to/random_file}} bs={{100}} count={{1}} Benchmark the write performance of a disk: dd if=/dev/zero of={{path/to/file_1GB}} bs={{1024}} count={{1000000}}
ddev Container based local development tool for PHP environments. More information: https://ddev.readthedocs.io. Start up a project: ddev start Configure a project’s type and docroot: ddev config [f]ollow the log trail: ddev logs -f Run composer within the container: ddev composer Install a specific Node.js version: ddev nvm install {{version}} Export a database: ddev export-db --file={{/tmp/db.sql.gz}} Run a specific command within a container: ddev exec {{echo 1}}
deb-get apt-get functionality for .deb packages published in third party repositories or via direct download. Works with Linux distributions which use apt-get. More information: https://github.com/wimpysworld/deb-get. Update the list of available packages and versions: sudo deb-get update Search for a given package: sudo deb-get search {{package}} Show information about a package: sudo deb-get show {{package}} Install a package, or update it to the latest available version: sudo deb-get install {{package}} Remove a package (using purge instead also removes its configuration files): sudo deb-get remove {{package}}
decaffeinate Move your CoffeeScript source to modern JavaScript. More information: https://decaffeinate-project.org. Convert a CoffeeScript file to JavaScript: decaffeinate {{path/to/file.coffee}} Convert a CoffeeScript v2 file to JavaScript: decaffeinate --use-cs2 {{path/to/file.coffee}} Convert require and module.exports to import and export: decaffeinate --use-js-modules {{path/to/file.coffee}} Convert a CoffeeScript, allowing named exports: decaffeinate --loose-js-modules {{path/to/file.coffee}}
declare Declare variables and give them attributes. More information: https://www.gnu.org/software/bash/manual/bash.html#Bash-Builtins. Declare a string variable with the specified value: declare {{variable}}="{{value}}" Declare an integer variable with the specified value: declare -i {{variable}}="{{value}}" Declare an array variable with the specified value: declare -a {{variable}}=({{item_a item_b item_c}}) Declare an associative array variable with the specified value: declare -A {{variable}}=({{[key_a]=item_a [key_b]=item_b [key_c]=item_c}}) Declare a readonly string variable with the specified value: declare -r {{variable}}="{{value}}"
deemix A barebone deezer downloader library built from the ashes of Deezloader Remix. It can be used as a standalone CLI app or implemented in a UI using the API. More information: https://deemix.app. Download a track or playlist: deemix {{https://www.deezer.com/us/track/00000000}} Download track/playlist at a specific bitrate: deemix --bitrate {{FLAC|MP3}} {{url}} Download to a specific path: deemix --bitrate {{bitrate}} --path {{path}} {{url}} Create a portable deemix config in the current directory: deemix --portable --bitrate {{bitrate}} --path {{path}} {{url}}
delta A viewer for Git and diff output. More information: https://github.com/dandavison/delta. Compare files or directories: delta {{path/to/old_file_or_directory}} {{path/to/new_file_or_directory}} Compare files or directories, showing the line numbers: delta --line-numbers {{path/to/old_file_or_directory}} {{path/to/new_file_or_directory}} Compare files or directories, showing the differences side by side: delta --side-by-side {{path/to/old_file_or_directory}} {{path/to/new_file_or_directory}} Compare files or directories, ignoring any Git configuration settings: delta --no-gitconfig {{path/to/old_file_or_directory}} {{path/to/new_file_or_directory}} Compare, rendering commit hashes, file names, and line numbers as hyperlinks, according to the hyperlink spec for terminal emulators: delta --hyperlinks {{path/to/old_file_or_directory}} {{path/to/new_file_or_directory}}
deluge A command-line BitTorrent client. More information: https://deluge-torrent.org. Download a torrent: deluge {{url|magnet|path/to/file}} Download a torrent using a specific configuration file: deluge -c {{path/to/configuration_file}} {{url|magnet|path/to/file}} Download a torrent and launch the specified user interface: deluge -u {{gtk|web|console}} {{url|magnet|path/to/file}} Download a torrent and output the log to a file: deluge -l {{path/to/log_file}} {{url|magnet|path/to/file}}
deluge-console An interactive interface for the Deluge BitTorrent client. More information: https://deluge-torrent.org. Start the interactive console interface: deluge-console Connect to a Deluge daemon instance: connect {{hostname}}:{{port}} Add a torrent to the daemon: add {{url|magnet|path/to/file}} Display information about all torrents: info Display information about a specific torrent: info {{torrent_id}} Pause a torrent: pause {{torrent_id}} Resume a torrent: resume {{torrent_id}} Remove a torrent from the daemon: rm {{torrent_id}}
deluged A daemon process for the Deluge BitTorrent client. More information: https://deluge-torrent.org. Start the Deluge daemon: deluged Start the Deluge daemon on a specific port: deluged -p {{port}} Start the Deluge daemon using a specific configuration file: deluged -c {{path/to/configuration_file}} Start the Deluge daemon and output the log to a file: deluged -l {{path/to/log_file}}
deno A secure runtime for JavaScript and TypeScript. More information: https://deno.land. Run a JavaScript or TypeScript file: deno run {{path/to/file.ts}} Start a REPL (interactive shell): deno Run a file with network access enabled: deno run --allow-net {{path/to/file.ts}} Run a file from a URL: deno run {{https://deno.land/std/examples/welcome.ts}} Install an executable script from a URL: deno install {{https://deno.land/std/examples/colors.ts}}
dep Deploy PHP applications. Note: The Go command dep with the same name is deprecated and archived. More information: https://deployer.org. Interactively initialize deployer in the local path (use a framework template with --template={{template}}): dep init Deploy an application to a remote host: dep deploy {{hostname}} Rollback to the previous working release: dep rollback Connect to a remote host via ssh: dep ssh {{hostname}} List commands: dep list Run any arbitrary command on the remote hosts: dep run "{{command}}"
detox Renames files to make them easier to work with. It removes spaces and other such annoyances like duplicate underline characters. More information: https://github.com/dharple/detox. Remove spaces and other undesirable characters from a file’s name: detox {{path/to/file}} Show how detox would rename all the files in a directory tree: detox --dry-run -r {{path/to/directory}} Remove spaces and other undesirable characters from all files in a directory tree: detox -r {{path/to/directory}}
dexdump Display information about Android DEX files. More information: https://manned.org/dexdump. Extract classes and methods from an APK file: dexdump {{path/to/file.apk}} Display header information of DEX files contained in an APK file: dexdump -f {{path/to/file.apk}} Display the dis-assembled output of executable sections: dexdump -d {{path/to/file.apk}} Output results to a file: dexdump -o {{path/to/file}} {{path/to/file.apk}}
dexter Tool for authenticating the kubectl users with OpenId Connect. More information: https://github.com/gini/dexter. Create and authenticate a user with Google OIDC: dexter auth -i {{client_id}} -s {{client_secret}} Override the default kube config location: dexter auth -i {{client_id}} -s {{client_secret}} --kube-config {{sample/config}}
df Gives an overview of the filesystem disk space usage. More information: https://www.gnu.org/software/coreutils/df. Display all filesystems and their disk usage: df Display all filesystems and their disk usage in human-readable form: df -h Display the filesystem and its disk usage containing the given file or directory: df {{path/to/file_or_directory}} Display statistics on the number of free inodes: df -i Display filesystems but exclude the specified types: df -x {{squashfs}} -x {{tmpfs}}
dfc Gives an overview of the filesystem disk space usage with colors and graphs. More information: https://projects.gw-computing.net/projects/dfc/wiki. Display filesystems and their disk usage in human-readable form with colors and graphs: dfc Display all filesystems including pseudo, duplicate and inaccessible filesystems: dfc -a Display filesystems without color: dfc -c never Display filesystems containing “ext” in the filesystem type: dfc -t ext
dhclient DHCP client. More information: https://manned.org/dhclient. Get an IP address for the eth0 interface: sudo dhclient {{eth0}} Release an IP address for the eth0 interface: sudo dhclient -r {{eth0}}
dhcpig Initiates an advanced DHCP exhaustion attack and stress test. DHCPig needs to be run with root privileges. More information: https://github.com/kamorin/DHCPig. Exhaust all of the available DHCP addresses using the specified interface: sudo ./pig.py {{eth0}} Exhaust IPv6 addresses using eth1 interface: sudo ./pig.py -6 {{eth1}} Send fuzzed/malformed data packets using the interface: sudo ./pig.py --fuzz {{eth1}} Enable color output: sudo ./pig.py -c {{eth1}} Enable minimal verbosity and color output: sudo .
dhcpwn Test DHCP IP exhaustion attacks and sniff local DHCP traffic. More information: https://github.com/mschwager/dhcpwn. Flood the network with IP requests: dhcpwn --interface {{network_interface}} flood --count {{number_of_requests}} Sniff local DHCP traffic: dhcpwn --interface {{network_interface}} sniff
dict Command line dictionary using the DICT protocol. More information: https://github.com/cheusov/dictd. List available databases: dict -D Get information about a database: dict -i {{database_name}} Look up a word in a specific database: dict -d {{database_name}} {{word}} Look up a word in all available databases: dict {{word}} Show information about the DICT server: dict -I
diff Compare files and directories. More information: https://man7.org/linux/man-pages/man1/diff.1.html. Compare files (lists changes to turn old_file into new_file): diff {{old_file}} {{new_file}} Compare files, ignoring white spaces: diff --ignore-all-space {{old_file}} {{new_file}} Compare files, showing the differences side by side: diff --side-by-side {{old_file}} {{new_file}} Compare files, showing the differences in unified format (as used by git diff): diff --unified {{old_file}} {{new_file}} Compare directories recursively (shows names for differing files/directories as well as changes made to files): diff --recursive {{old_directory}} {{new_directory}}
diff-pdf Tool for comparing two PDFs. More information: https://github.com/vslavik/diff-pdf. Compare PDFs, indicating changes using return codes (0 = no difference, 1 = PDFs differ): diff-pdf {{path/to/a.pdf}} {{path/to/b.pdf}} Compare PDFs, outputting a PDF with visually highlighted differences: diff-pdf --output-diff={{path/to/diff.pdf}} {{path/to/a.pdf}} {{path/to/b.pdf}} Compare PDFs, viewing differences in a simple GUI: diff-pdf --view {{path/to/a.pdf}} {{path/to/b.pdf}}
diffoscope Compare files, archives, and directories. More information: https://diffoscope.org. Compare two files: diffoscope {{path/to/file1}} {{path/to/file2}} Compare two files without displaying a progress bar: diffoscope --no-progress {{path/to/file1}} {{path/to/file2}} Compare two files and write an HTML-report to a file (use - for stdout): diffoscope --html {{path/to/outfile|-}} {{path/to/file1}} {{path/to/file2}} Compare two directories excluding files with a name matching a specified pattern: diffoscope --exclude {{pattern}} {{path/to/directory1}} {{path/to/directory2}} Compare two directories and control whether directory metadata is considered: diffoscope --exclude-directory-metadata {{auto|yes|no|recursive}} {{path/to/directory1}} {{path/to/directory2}}
diffstat Create a histogram from the output of the diff command. More information: https://manned.org/diffstat. Display changes in a histogram: diff {{file1}} {{file2}} | diffstat Display inserted, deleted and modified changes as a table: diff {{file1}} {{file2}} | diffstat -t
dig DNS lookup utility. More information: https://manned.org/dig. Lookup the IP(s) associated with a hostname (A records): dig +short {{example.com}} Get a detailed answer for a given domain (A records): dig +noall +answer {{example.com}} Query a specific DNS record type associated with a given domain name: dig +short {{example.com}} {{A|MX|TXT|CNAME|NS}} Get all types of records for a given domain name: dig {{example.com}} ANY Specify an alternate DNS server to query: dig @{{8.
dillo A lightweight web browser intended for slow computers. More information: https://www.dillo.org/. Launch Dillo: dillo Launch Dillo with a specific window size and screen location: dillo --geometry {{width}}x{{height}}+{{x_position}}+{{y_position}} Launch Dillo and open a specific URL: dillo {{duckduckgo.com}} Launch Dillo and open a file or directory: dillo {{path/to/file_or_directory}} Launch Dillo in full-screen mode: dillo --fullwindow Display version: dillo --version Display help: dillo --help
dircolors Output commands to set the LS_COLOR environment variable and style ls, dir, etc. More information: https://www.gnu.org/software/coreutils/dircolors. Output commands to set LS_COLOR using default colors: dircolors Output commands to set LS_COLOR using colors from a file: dircolors {{path/to/file}} Output commands for Bourne shell: dircolors --bourne-shell Output commands for C shell: dircolors --c-shell View the default colors for file types and extensions: dircolors --print-data
direnv Shell extension to load and unload environment variables depending on the current directory. More information: https://github.com/direnv/direnv. Grant direnv permission to load the .envrc present in the current directory: direnv allow {{.}} Revoke the authorization to load the .envrc present in the current directory: direnv deny {{.}} Edit the .envrc file in the default text editor and reload the environment on exit: direnv edit {{.}} Trigger a reload of the environment: direnv reload
dirname Calculates the parent directory of a given file or directory path. More information: https://www.gnu.org/software/coreutils/dirname. Calculate the parent directory of a given path: dirname {{path/to/file_or_directory}} Calculate the parent directory of multiple paths: dirname {{path/to/file_a}} {{path/to/directory_b}} Delimit output with a NUL character instead of a newline (useful when combining with xargs): dirname --zero {{path/to/directory_a}} {{path/to/file_b}}
dirs Displays or manipulates the directory stack. The directory stack is a list of recently visited directories that can be manipulated with the pushd and popd commands. More information: https://www.gnu.org/software/bash/manual/bash.html#Directory-Stack-Builtins. Display the directory stack with a space between each entry: dirs Display the directory stack with one entry per line: dirs -p Display only the nth entry in the directory stack, starting at 0: dirs +{{N}} Clear the directory stack: dirs -c
dirsearch Web path scanner. More information: https://github.com/maurosoria/dirsearch. Scan a web server for common paths with common extensions: dirsearch --url {{url}} --extensions-list Scan a list of web servers for common paths with the .php extension: dirsearch --url-list {{path/to/url-list.txt}} --extensions {{php}} Scan a web server for user-defined paths with common extensions: dirsearch --url {{url}} --extensions-list --wordlist {{path/to/url-paths.txt}} Scan a web server using a cookie: dirsearch --url {{url}} --extensions {{php}} --cookie {{cookie}} Scan a web server using the HEAD HTTP method: dirsearch --url {{url}} --extensions {{php}} --http-method {{HEAD}}
diskonaut Terminal disk space navigator, written in Rust. More information: https://github.com/imsnif/diskonaut. Start diskonaut in the current directory: diskonaut Start diskonaut in a specific directory: diskonaut {{path/to/directory}} Show file sizes rather than their block usage on the disk: diskonaut --apparent-size {{path/to/directory}} Disable deletion confirmation: diskonaut --disable-delete-confirmation
distccd Server daemon for the distcc distributed compiler. More information: https://distcc.github.io. Start a daemon with the default settings: distccd --daemon Start a daemon, accepting connections from IPv4 private network ranges: distccd --daemon --allow-private Start a daemon, accepting connections from a specific network address or address range: distccd --daemon --allow {{ip_address|network_prefix}} Start a daemon with a lowered priority that can run a maximum of 4 tasks at a time: distccd --daemon --jobs {{4}} --nice {{5}}
dive A tool for exploring a Docker image, layer contents, and discovering ways to shrink it. More information: https://github.com/wagoodman/dive. Analyze a Docker image: dive {{your_image_tag}} Build an image and start analyzing it: dive build -t {{some_tag}}
django-admin Django’s utility for administrative tasks. More information: https://docs.djangoproject.com/en/4.1/ref/django-admin/. Create a new Django project: django-admin startproject {{project_name}} Create a new app for the current project: django-admin startapp {{app_name}} Check the current version of Django: django-admin --version Display more information for the given command: django-admin help {{command}}
dlv Debugger for the Go programming language. More information: https://github.com/go-delve/delve/blob/master/Documentation/usage/dlv.md. Compile and begin debugging the main package in the current directory (by default, with no arguments): dlv debug Compile and begin debugging a specific package: dlv debug {{package}} {{arguments}} Compile a test binary and begin debugging the compiled program: dlv test Connect to a headless debug server: dlv connect {{ip_address}} Attach to a running process and begin debugging: div attach {{pid}}
doas Executes a command as another user. More information: https://man.openbsd.org/doas. Run a command as root: doas {{command}} Run a command as another user: doas -u {{user}} {{command}} Launch the default shell as root: doas -s Parse a config file and check if the execution of a command as another user is allowed: doas -C {{config_file}} {{command}} Make doas request a password even after it was supplied earlier: doas -L
docker Manage Docker containers and images. Some subcommands such as docker run have their own usage documentation. More information: https://docs.docker.com/engine/reference/commandline/cli/. List all docker containers (running and stopped): docker ps --all Start a container from an image, with a custom name: docker run --name {{container_name}} {{image}} Start or stop an existing container: docker {{start|stop}} {{container_name}} Pull an image from a docker registry: docker pull {{image}} Display the list of already downloaded images: docker images
docker build Build an image from a Dockerfile. More information: https://docs.docker.com/engine/reference/commandline/build/. Build a docker image using the Dockerfile in the current directory: docker build . Build a docker image from a Dockerfile at a specified URL: docker build {{github.com/creack/docker-firefox}} Build a docker image and tag it: docker build --tag {{name:tag}} . Build a docker image with no build context: docker build --tag {{name:tag}} - < {{Dockerfile}} Do not use the cache when building the image: docker build --no-cache --tag {{name:tag}} .
docker commit Create a new image from a container’s changes. More information: https://docs.docker.com/engine/reference/commandline/commit/. Create an image from a specific container: docker commit {{container}} {{image}}:{{tag}} Apply a CMD Dockerfile instruction to the created image: docker commit --change="CMD {{command}}" {{container}} {{image}}:{{tag}} Apply an ENV Dockerfile instruction to the created image: docker commit --change="ENV {{name}}={{value}}" {{container}} {{image}}:{{tag}} Create an image with a specific author in the metadata: docker commit --author="{{author}}" {{container}} {{image}}:{{tag}} Create an image with a specific comment in the metadata: docker commit --message="{{comment}}" {{container}} {{image}}:{{tag}}
docker compose Run and manage multi container docker applications. More information: https://docs.docker.com/compose/reference/. List all running containers: docker compose ps Create and start all containers in the background using a docker-compose.yml file from the current directory: docker compose up --detach Start all containers, rebuild if necessary: docker compose up --build Start all containers by specifying a project name and using an alternate compose file: docker compose -p {{project_name}} --file {{path/to/file}} up
docker container Manage Docker containers. More information: https://docs.docker.com/engine/reference/commandline/container/. List currently running Docker containers: docker container ls Start one or more stopped containers: docker container start {{container1_name}} {{container2_name}} Kill one or more running containers: docker container kill {{container_name}} Stop one or more running containers: docker container stop {{container_name}} Pause all processes within one or more containers: docker container pause {{container_name}} Display detailed information on one or more containers: docker container inspect {{container_name}}
docker cp Copy files or directories between host and container filesystems. More information: https://docs.docker.com/engine/reference/commandline/cp. Copy a file or directory from the host to a container: docker cp {{path/to/file_or_directory_on_host}} {{container_name}}:{{path/to/file_or_directory_in_container}} Copy a file or directory from a container to the host: docker cp {{container_name}}:{{path/to/file_or_directory_in_container}} {{path/to/file_or_directory_on_host}} Copy a file or directory from the host to a container, following symlinks (copies the symlinked files directly, not the symlinks themselves): docker cp --follow-link {{path/to/symlink_on_host}} {{container_name}}:{{path/to/file_or_directory_in_container}}
docker exec Execute a command on an already running Docker container. More information: https://docs.docker.com/engine/reference/commandline/exec/. Enter an interactive shell session on an already-running container: docker exec --interactive --tty {{container_name}} {{/bin/bash}} Run a command in the background (detached) on a running container: docker exec --detach {{container_name}} {{command}} Select the working directory for a given command to execute into: docker exec --interactive -tty --workdir {{path/to/directory}} {{container_name}} {{command}} Run a command in background on existing container but keep stdin open: docker exec --interactive --detach {{container_name}} {{command}}
docker image Manage Docker images. See also docker build, docker import, and docker pull. More information: https://docs.docker.com/engine/reference/commandline/image/. List local Docker images: docker image ls Delete unused local Docker images: docker image prune Delete all unused images (not just those without a tag): docker image prune --all Show the history of a local Docker image: docker image history {{image}}
docker images Manage Docker images. More information: https://docs.docker.com/engine/reference/commandline/images/. List all Docker images: docker images List all Docker images including intermediates: docker images --all List the output in quiet mode (only numeric IDs): docker images --quiet List all Docker images not used by any container: docker images --filter dangling=true List images that contain a substring in their name: docker images "{{*name*}}" Sort images by size: docker images --format "{{.ID}}\t{{.Size}}\t{{.Repository}}:{{.Tag}}" | sort -k 2 -h
docker inspect Return low-level information on Docker objects. More information: https://docs.docker.com/engine/reference/commandline/inspect/. Show help: docker inspect Display information about a container, image, or volume using a name or ID: docker inspect {{container|image|ID}} Display a container’s IP address: docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' {{container}} Display the path to the container’s log file: docker inspect --format='{{.LogPath}}' {{container}} Display the image name of the container: docker inspect --format='{{.Config.Image}}' {{container}} Display the configuration information as JSON: docker inspect --format='{{json .
docker load Load Docker images from files or stdin. More information: https://docs.docker.com/engine/reference/commandline/load/. Load a Docker image from stdin: docker load < {{path/to/image_file.tar}} Load a Docker image from a specific file: docker load --input {{path/to/image_file.tar}} Load a Docker image from a specific file in quiet mode: docker load --quiet --input {{path/to/image_file.tar}}
docker login Log into a docker registry. More information: https://docs.docker.com/engine/reference/commandline/login/. Interactively log into a registry: docker login Log into a registry with a specific username (user will be prompted for a password): docker login --username {{username}} Log into a registry with username and password: docker login --username {{username}} --password {{password}} {{server}} Log into a registry with password from stdin: echo "{{password}}" | docker login --username {{username}} --password-stdin
docker logs Print container logs. More information: https://docs.docker.com/engine/reference/commandline/logs. Print logs from a container: docker logs {{container_name}} Print logs and follow them: docker logs -f {{container_name}} Print last 5 lines: docker logs {{container_name}} --tail {{5}} Print logs and append them with timestamps: docker logs -t {{container_name}} Print logs from a certain point in time of container execution (i.e. 23m, 10s, 2013-01-02T13:23:37): docker logs {{container_name}} --until {{time}}
docker-machine Create and manage machines running Docker. More information: https://docs.docker.com/machine/reference/. List currently running docker machines: docker-machine ls Create a new docker machine with specific name: docker-machine create {{name}} Get the status of a machine: docker-machine status {{name}} Start a machine: docker-machine start {{name}} Stop a machine: docker-machine stop {{name}} Inspect information about a machine: docker-machine inspect {{name}}
docker network Create and manage docker networks. More information: https://docs.docker.com/engine/reference/commandline/network/. List all available and configured networks on docker daemon: docker network ls Create a user-defined network: docker network create --driver {{driver_name}} {{network_name}} Display detailed information of a space-separated list of networks: docker network inspect {{network_name}} Connect a container to a network using a name or ID: docker network connect {{network_name}} {{container_name|ID}} Disconnect a container from a network: docker network disconnect {{network_name}} {{container_name|ID}}
docker ps List Docker containers. More information: https://docs.docker.com/engine/reference/commandline/ps/. List currently running docker containers: docker ps List all docker containers (running and stopped): docker ps --all Show the latest created container (includes all states): docker ps --latest Filter containers that contain a substring in their name: docker ps --filter="name={{name}}" Filter containers that share a given image as an ancestor: docker ps --filter "ancestor={{image}}:{{tag}}" Filter containers by exit status code: docker ps --all --filter="exited={{code}}"
docker pull Download Docker images from a registry. More information: https://docs.docker.com/engine/reference/commandline/pull/. Download a specific Docker image: docker pull {{image}}:{{tag}} Download a specific Docker image in quiet mode: docker pull --quiet {{image}}:{{tag}} Download all tags of a specific Docker image: docker pull --all-tags {{image}} Download a Docker images for a specific platform, e.g. linux/amd64: docker pull --platform {{linux/amd64}} {{image}}:{{tag}} Display help: docker pull --help
docker rmi Remove one or more Docker images. More information: https://docs.docker.com/engine/reference/commandline/rmi/. Show help: docker rmi Remove one or more images given their names: docker rmi {{image1 image2 ...}} Force remove an image: docker rmi --force {{image}} Remove an image without deleting untagged parents: docker rmi --no-prune {{image}}
docker run Run a command in a new Docker container. More information: https://docs.docker.com/engine/reference/commandline/run/. Run command in a new container from a tagged image: docker run {{image:tag}} {{command}} Run command in a new container in background and display its ID: docker run --detach {{image}} {{command}} Run command in a one-off container in interactive mode and pseudo-TTY: docker run --rm --interactive --tty {{image}} {{command}} Run command in a new container with passed environment variables: docker run --env '{{variable}}={{value}}' --env {{variable}} {{image}} {{command}}
docker save Export one or more docker images to archive. More information: https://docs.docker.com/engine/reference/commandline/save/. Save an image by redirecting stdout to a tar archive: docker save {{image}}:{{tag}} > {{path/to/file.tar}} Save an image to a tar archive: docker save --output {{path/to/file.tar}} {{image}}:{{tag}} Save all tags of the image: docker save --output {{path/to/file.tar}} {{image_name}} Cherry-pick particular tags of an image to save: docker save --output {{path/to/file.tar}} {{image_name:tag1 image_name:tag2 ...}}
docker secret Manage Docker swarm secrets. More information: https://docs.docker.com/engine/reference/commandline/secret/. Create a new secret from stdin: {{command}} | docker secret create {{secret_name}} - Create a new secret from a file: docker secret create {{secret_name}} {{path/to/file}} List all secrets: docker secret ls Display detailed information on one or multiple secrets in a human friendly format: docker secret inspect --pretty {{secret_name1 secret_name2 ...}} Remove one or more secrets: docker secret rm {{secret_name1 secret_name2 .
docker service Manage the services on a docker daemon. More information: https://docs.docker.com/engine/reference/commandline/service/. List the services on a docker daemon: docker service ls Create a new service: docker service create --name {{service_name}} {{image}}:{{tag}} Display detailed information of a space-separated list of services: docker service inspect {{service_name|ID}} List the tasks of a space-separated list of services: docker service ps {{service_name|ID}} Scale to a specific number of replicas for a space-separated list of services: docker service scale {{service_name}}={{count_of_replicas}}
docker-slim Analyze and optimize Docker images. More information: https://github.com/docker-slim/docker-slim. Start DockerSlim on interactive mode: docker-slim Analyze Docker layers from a specific image: docker-slim xray --target {{image:tag}} Lint a Dockerfile: docker-slim lint --target {{path/to/Dockerfile}} Analyze and generate an optimized Docker image: docker-slim build {{image:tag}} Display help for a subcommand: docker-slim {{subcommand}} --help
docker start Start one or more stopped containers. More information: https://docs.docker.com/engine/reference/commandline/start/. Show help: docker start Start a docker container: docker start {{container}} Start a container, attaching stdout and stderr and forwarding signals: docker start --attach {{container}} Start one or more space-separated containers: docker start {{container1 container2 ...}}
docker stats Display a live stream of resource usage statistics for containers. More information: https://docs.docker.com/engine/reference/commandline/stats/. Display a live stream for the statistics of all running containers: docker stats Display a live stream of statistics for a space-separated list of containers: docker stats {{container_name}} Change the columns format to display container’s CPU usage percentage: docker stats --format "{{.Name}}:\t{{.CPUPerc}}" Display statistics for all containers (both running and stopped): docker stats --all Disable streaming stats and only pull the current stats: docker stats --no-stream
docker swarm A container orchestration tool. More information: https://docs.docker.com/engine/swarm/. Initialize a swarm cluster: docker swarm init Display the token to join a manager or a worker: docker swarm join-token {{worker|manager}} Join a new node to the cluster: docker swarm join --token {{token}} {{manager_node_url:2377}} Remove a worker from the swarm (run inside the worker node): docker swarm leave Display the current CA certificate in PEM format: docker swarm ca Rotate the current CA certificate and display the new certificate: docker swarm ca --rotate
docker system Manage Docker data and display system-wide information. More information: https://docs.docker.com/engine/reference/commandline/system/. Show help: docker system Show docker disk usage: docker system df Show detailed information on disk usage: docker system df --verbose Remove unused data: docker system prune Remove unused data created more than a specified amount of time in the past: docker system prune --filter="until={{hours}}h{{minutes}}m" Display real-time events from the Docker daemon: docker system events Display real-time events from containers streamed as valid JSON Lines: docker system events --filter 'type=container' --format '{{json .
docker tag Assign tags to existing Docker images. More information: https://docs.docker.com/engine/reference/commandline/tag/. Assign a name and tag to a specific image ID: docker tag {{id}} {{name}}:{{tag}} Assign a tag to a specific image: docker tag {{image}}:{{current_tag}} {{image}}:{{new_tag}} Display help: docker tag
docker update Update configuration of Docker containers. This command is not supported for Windows containers. More information: https://docs.docker.com/engine/reference/commandline/update/. Update restart policy to apply when a specific container exits: docker update --restart={{always|no|on-failure|unless-stopped}} {{container_name}} Update the policy to restart up to three times a specific container when it exits with non-zero exit status: docker update --restart=on-failure:3 {{container_name}} Update the number of CPUs available to a specific container: docker update --cpus {{count}} {{container_name}}
docker volume Manage Docker volumes. More information: https://docs.docker.com/engine/reference/commandline/volume/. Create a volume: docker volume create {{volume_name}} Create a volume with a specific label: docker volume create --label {{label}} {{volume_name}} Create a tmpfs volume a size of 100 MiB and an uid of 1000: docker volume create --opt {{type}}={{tmpfs}} --opt {{device}}={{tmpfs}} --opt {{o}}={{size=100m,uid=1000}} {{volume_name}} List all volumes: docker volume ls Remove a volume: docker volume rm {{volume_name}} Display information about a volume: docker volume inspect {{volume_name}}
docsify Initialize and serve markdown documentation. More information: https://cli.docsifyjs.org. Initialize a new documentation in the current directory: docsify init Initialize a new documentation in the specified directory: docsify init {{path/to/directory}} Serve local documentation on localhost:3000 with live reload: docsify serve {{path/to/directory}} Serve local documentation on localhost at the specified port: docsify serve --port {{80}} {{path/to/directory}} Generate a sidebar markdown file in the specified directory: docsify generate {{path/to/directory}}
doctl account Retrieve information about Digital Ocean accounts. More information: https://docs.digitalocean.com/reference/doctl/reference/account/. Display account info: doctl account get Show the hourly API limit, progress towards it, and when the rate limit resets: doctl account ratelimit Display help: doctl account --help
doctl apps Used to manage digitalocean apps. More information: https://docs.digitalocean.com/reference/doctl/reference/apps. Create an app: doctl apps create Create a deployment for a specific app: doctl apps create-deployment {{app_id}} Delete an app interactively: doctl apps delete {{app_id}} Get an app: doctl apps get List all apps: doctl apps list List all deployments from a specific app: doctl apps list-deployments {{app_id}} Get logs from a specific app: doctl apps logs {{app_id}} Update a specific app with a given app spec: doctl apps update {{app_id}} --spec {{path/to/spec.
doctl auth Authenticate doctl with one or more API tokens. More information: https://docs.digitalocean.com/reference/doctl/reference/auth/. Open a prompt to enter an API token and label its context: doctl auth init --context {{token_label}} List authentication contexts (API tokens): doctl auth list Switch contexts (API tokens): doctl auth switch --context {{token_label}} Remove a stored authentication context (API token): doctl auth remove --context {{token_label}} Show available commands: doctl auth --help
doctl balance Show the balance of a Digital Ocean account. More information: https://docs.digitalocean.com/reference/doctl/reference/balance/. Get balance of the account associated with the current context: doctl balance get Get the balance of an account associated with an access token: doctl balance get --access-token {{access_token}} Get the balance of an account associated with a specified context: doctl balance get --context
doctl compute droplet List, create, and delete virtual machines which are called droplets. More information: https://docs.digitalocean.com/reference/doctl/reference/compute/droplet/. Create a droplet: doctl compute droplet create --region {{region}} --image {{os_image}} --size {{vps_type}} {{droplet_name}} Delete a droplet: doctl compute droplet delete {{droplet_id|droplet_name}} List droplets: doctl compute droplet list
doctl kubernetes cluster Manage Kubernetes clusters and view configuration options relating to clusters. More information: https://docs.digitalocean.com/reference/doctl/reference/kubernetes/cluster/. Create a Kubernetes cluster: doctl kubernetes cluster create --count {{3}} --region {{nyc1}} --size {{s-1vcpu-2gb}} --version {{latest}} {{cluster_name}} List all Kubernetes clusters: doctl kubernetes cluster list Fetch and save the kubeconfig: doctl kubernetes cluster kubeconfig save {{cluster_name}} Check for available upgrades: doctl kubernetes cluster get-upgrades {{cluster_name}} Upgrade a cluster to a new Kubernetes version: doctl kubernetes cluster upgrade {{cluster_name}}
doctl kubernetes options Provides values available for use with doctl’s Kubernetes commands. More information: https://docs.digitalocean.com/reference/doctl/reference/kubernetes/options/. List regions that support Kubernetes clusters: doctl kubernetes options regions List machine sizes that can be used in a Kubernetes cluster: doctl kubernetes options sizes List Kubernetes versions that can be used with DigitalOcean clusters: doctl kubernetes options versions
doctl serverless Manage serverless functions. More information: https://docs.digitalocean.com/reference/doctl/reference/serverless/. Connect local serverless support to a functions namespace: doctl serverless connect Deploy a functions project to your functions namespace: doctl serverless deploy Obtain metadata of a functions project: doctl serverless get-metadata Provide information about serverless support: doctl serverless status
doctum A PHP API documentation generator. More information: https://github.com/code-lts/doctum. Parse a project: doctum parse Render a project: doctum render Parse then render a project: doctum update Parse and render only a specific version of a project: doctum update --only-version={{version}} Parse and render a project using a specific configuration: doctum update {{path/to/config.php}}
dog DNS lookup utility. It has colorful output, supports DNS-over-TLS and DNS-over-HTTPS protocols, and can emit JSON. More information: https://dns.lookup.dog. Lookup the IP(s) associated with a hostname (A records): dog {{example.com}} Query the MX records type associated with a given domain name: dog {{example.com}} MX Specify a specific DNS server to query (e.g. Cloudflare): dog {{example.com}} MX @{{1.1.1.1}} Query over TCP rather than UDP: dog {{example.com}} MX @{{1.1.1.1}} --tcp Query the MX records type associated with a given domain name over TCP using explicit arguments: dog --query {{example.
dokku Docker powered mini-Heroku (PaaS). Easily deploy multiple apps to your server in different languages using a single git-push command. More information: https://github.com/dokku/dokku. List running apps: dokku apps Create an app: dokku apps:create {{app_name}} Remove an app: dokku apps:destroy {{app_name}} Install plugin: dokku plugin:install {{full_repo_url}} Link database to an app: dokku {{db}}:link {{db_name}} {{app_name}}
dolt Dolt is an SQL database that you can fork, clone, branch, merge, push and pull just like a Git repository. Some subcommands such as dolt commit have their own usage documentation. More information: https://github.com/dolthub/dolt. Execute a dolt subcommand: dolt {{subcommand}} List available subcommands: dolt help
dolt add Add the contents of a table to the list of Dolt staged tables. More information: https://github.com/dolthub/dolt. Add a table to the list of staged tables (stage a table): dolt add {{table}} Stage all tables: dolt add --all
dolt blame Displays commit information for each row of a Dolt table. More information: http://github.com/dolthub/dolt. Display the latest commit for each row of a table: dolt blame {{table}} Display the latest commits for each row of a table when the specified commit was made: dolt blame {{commit}} {{table}} View help: dolt blame --help
dolt branch Manage Dolt branches. More information: https://github.com/dolthub/dolt. List local branches (current branch is highlighted by *): dolt branch List all local and remote branches: dolt branch --all Create a new branch based on the current branch: dolt branch {{branch_name}} Create a new branch with the specified commit as the latest: dolt branch {{branch_name}} {{commit}} Rename a branch: dolt branch --move {{branch_name1}} {{branch_name2}} Duplicate a branch: dolt branch --copy {{branch_name1}} {{branch_name2}}
dolt checkout Checkout the work tree or tables to a specific branch or commit. More information: https://github.com/dolthub/dolt. Switch to a branch: dolt checkout {{branch_name}} Revert unstaged changes to a table: dolt checkout {{table}} Create new branch and switch to it: dolt checkout -b {{branch_name}} Create new branch based on a specified commit and switch to it: dolt checkout -b {{branch_name}} {{commit}}
dolt clone Clone a repository into a new directory. More information: https://docs.dolthub.com/interfaces/cli#dolt-clone. Clone an existing repository into a specific directory (defaults to the repository name): dolt clone {{repository_url}} {{path/to/directory}} Clone an existing repository and add a specific remote (defaults to origin): dolt clone --remote {{remote_name}} {{repository_url}} Clone an existing repository only fetching a specific branch (defaults to all branches): dolt clone --branch {{branch_name}} {{repository_url}} Clone a repository, using an AWS region (uses the profile’s default region if none is provided): dolt clone --aws-region {{region_name}} {{repository_url}}
dolt commit Commit staged changes to tables. More information: https://docs.dolthub.com/interfaces/cli#dolt-commit. Commit all staged changes, opening the editor specified by $EDITOR to enter the commit message: dolt commit Commit all staged changes with the specified message: dolt commit --message "{{commit_message}}" Stage all unstaged changes to tables before committing: dolt commit --all Use the specified ISO 8601 commit date (defaults to current date and time): dolt commit --date "{{2021-12-31T00:00:00}}" Use the specified author for the commit: dolt commit --author "{{author_name}} <{{author_email}}>"
dolt config Read and write local (per repository) and global (per user) Dolt configuration variables. More information: https://docs.dolthub.com/interfaces/cli#dolt-config. List all local and global configuration options and their values: dolt config --list Display the value of a local or global configuration variable: dolt config --get {{name}} Modify the value of a local configuration variable, creating it if it doesn’t exist: dolt config --add {{name}} {{value}} Modify the value of a global configuration variable, creating it if it doesn’t exist: dolt config --global --add {{name}} {{value}}
dolt fetch Download objects and refs from another repository. More information: https://github.com/dolthub/dolt. Fetch the latest changes from the default remote upstream repository (origin): dolt fetch Fetch latest changes from a specific remote upstream repository: dolt fetch {{remote_name}} Update branches with the current state of the remote, overwriting any conflicting history: dolt fetch -f
dolt init Create an empty Dolt data repository. More information: https://docs.dolthub.com/cli-reference/cli#dolt-init. Initialize a new Dolt data repository in the current directory: dolt init Initialize a new Dolt data repository creating a commit with the specified metadata: dolt init --name "{{name}}" --email "{{email}}" --date "{{2021-12-31T00:00:00}}" -b "{{branch_name}}"
dolt merge Join two or more development histories together. More information: https://github.com/dolthub/dolt. Incorporate changes from the named commits into the current branch: dolt merge {{branch_name}} Incorporate changes from the named commits into the current branch without updating the commit history: dolt merge --squash {{branch_name}} Merge a branch and create a merge commit even when the merge resolves as a fast-forward: dolt merge --no-ff {{branch_name}} Merge a branch and create a merge commit with a specific commit message: dolt merge --no-ff -m "{{message}}" {{branch_name}}
dolt sql Run a SQL query. Multiple SQL statements must be separated by semicolons. More information: https://docs.dolthub.com/cli-reference/cli#dolt-sql. Run a single query: dolt sql --query "{{INSERT INTO t values (1, 3);}}" List all saved queries: dolt sql --list-saved
dolt status Display the status of the database session. More information: https://docs.dolthub.com/cli-reference/cli#dolt-status. Display the status: dolt status
dolt version Displays the current dolt CLI version. More information: http://github.com/dolthub/dolt. Display version: dolt version
dot Render an image of a linear directed network graph from a graphviz file. Layouts: dot, neato, twopi, circo, fdp, sfdp, osage & patchwork. More information: https://graphviz.org/doc/info/command.html. Render a png image with a filename based on the input filename and output format (uppercase -O): dot -T {{png}} -O {{path/to/input.gv}} Render a svg image with the specified output filename (lowercase -o): dot -T {{svg}} -o {{path/to/image.svg}} {{path/to/input.gv}} Render the output in ps, pdf, svg, fig, png, gif, jpg, json, or dot format: dot -T {{format}} -O {{path/to/input.
dotnet Cross platform .NET command-line tools for .NET Core. Some subcommands such as dotnet build have their own usage documentation. More information: https://learn.microsoft.com/dotnet/core/tools. Initialize a new .NET project: dotnet new {{template_short_name}} Restore NuGet packages: dotnet restore Build and execute the .NET project in the current directory: dotnet run Run a packaged dotnet application (only needs the runtime, the rest of the commands require the .NET Core SDK installed): dotnet {{path/to/application.dll}}
dotnet build Builds a .NET application and its dependencies. More information: https://learn.microsoft.com/dotnet/core/tools/dotnet-build. Compile the project or solution in the current directory: dotnet build Compile a .NET project or solution in debug mode: dotnet build {{path/to/project_or_solution}} Compile in release mode: dotnet build --configuration {{Release}} Compile without restoring dependencies: dotnet build --no-restore Compile with a specific verbosity level: dotnet build --verbosity {{quiet|minimal|normal|detailed|diagnostic}} Compile for a specific runtime: dotnet build --runtime {{runtime_identifier}} Specify the output directory: dotnet build --output {{path/to/directory}}
dotnet ef Perform design-time development tasks for Entity Framework Core. More information: https://learn.microsoft.com/ef/core/cli/dotnet. Update the database to a specified migration: dotnet ef database update {{migration}} Drop the database: dotnet ef database drop List available DbContext types: dotnet ef dbcontext list Generate code for a DbContext and entity types for a database: dotnet ef dbcontext scaffold {{connection_string}} {{provider}} Add a new migration: dotnet ef migrations add {{name}} Remove the last migration, rolling back the code changes that were done for the latest migration: dotnet ef migrations remove
dotnet publish Publish a .NET application and its dependencies to a directory for deployment to a hosting system. More information: https://learn.microsoft.com/dotnet/core/tools/dotnet-publish. Compile a .NET project in release mode: dotnet publish --configuration Release {{path/to/project_file}} Publish the .NET Core runtime with your application for the specified runtime: dotnet publish --self-contained true --runtime {{runtime_identifier}} {{path/to/project_file}} Package the application into a platform-specific single-file executable: dotnet publish --runtime {{runtime_identifier}} -p:PublishSingleFile=true {{path/to/project_file}} Trim unused libraries to reduce the deployment size of an application: dotnet publish --self-contained true --runtime {{runtime_identifier}} -p:PublishTrimmed=true {{path/to/project_file}}
dotnet restore Restores the dependencies and tools of a .NET project. More information: https://learn.microsoft.com/dotnet/core/tools/dotnet-restore. Restore dependencies for a .NET project or solution in the current directory: dotnet restore Restore dependencies for a .NET project or solution in a specific location: dotnet restore {{path/to/project_or_solution}} Restore dependencies without caching the HTTP requests: dotnet restore --no-cache Force all dependencies to be resolved even if the last restore was successful: dotnet restore --force Restore dependencies using package source failures as warnings: dotnet restore --ignore-failed-sources
dotnet tool Manage .NET tools and search published tools in NuGet. More information: https://learn.microsoft.com/dotnet/core/tools/global-tools. Install a global tool (don’t use --global for local tools): dotnet tool install --global {{dotnetsay}} Install tools defined in the local tool manifest: dotnet tool restore Update a specific global tool (don’t use --global for local tools): dotnet tool update --global {{tool_name}} Uninstall a global tool (don’t use --global for local tools): dotnet tool uninstall --global {{tool_name}}
doxygen A documentation system for various programming languages. More information: http://www.doxygen.nl. Generate a default template configuration file Doxyfile: doxygen -g Generate a template configuration file: doxygen -g {{path/to/config_file}} Generate documentation using an existing configuration file: doxygen {{path/to/config_file}}
drill Perform various DNS queries. More information: https://manned.org/drill. Lookup the IP(s) associated with a hostname (A records): drill {{example.com}} Lookup the mail server(s) associated with a given domain name (MX record): drill mx {{example.com}} Get all types of records for a given domain name: drill any {{example.com}} Specify an alternate DNS server to query: drill {{example.com}} @{{8.8.8.8}} Perform a reverse DNS lookup on an IP address (PTR record): drill -x {{8.
drupal Generate boilerplate code, interact with and debug Drupal projects. Some subcommands such as drupal check have their own usage documentation. More information: https://drupalconsole.com/. Install a module: drupal module:install {{module_name}} Uninstall a module: drupal module:uninstall {{module_name}} Clear all caches: drupal cache:rebuild View current Drupal installation status: drupal site:status
drupal-check Check Drupal PHP code for deprecations. More information: https://github.com/mglaman/drupal-check. Check the code in a specific directory for deprecations: drupal-check {{path/to/directory}} Check the code excluding a comma-separated list of directories: drupal-check --exclude-dir {{path/to/excluded_directory}},{{path/to/excluded_files/*.php}} {{path/to/directory}} Don’t show a progress bar: drupal-check --no-progress {{path/to/directory}} Perform static analysis to detect bad coding practices: drupal-check --analysis {{path/to/directory}}
drush A command-line shell and scripting interface for Drupal. More information: https://www.drush.org. Enable module “foo”: drush en {{foo}} Uninstall module “foo”: drush pmu {{foo}} Clear all caches: drush cr Clear CSS and JavaScript caches: drush cc css-js
du Disk usage: estimate and summarize file and directory space usage. More information: https://www.gnu.org/software/coreutils/du. List the sizes of a directory and any subdirectories, in the given unit (B/KiB/MiB): du -{{b|k|m}} {{path/to/directory}} List the sizes of a directory and any subdirectories, in human-readable form (i.e. auto-selecting the appropriate unit for each size): du -h {{path/to/directory}} Show the size of a single directory, in human-readable units: du -sh {{path/to/directory}} List the human-readable sizes of a directory and of all the files and directories within it: du -ah {{path/to/directory}}
dua Dua (Disk Usage Analyzer) is a tool to conveniently learn about the usage of disk space of a given directory. More information: https://github.com/Byron/dua-cli. Analyze specific directory: dua {{path/to/directory}} Display apparent size instead of disk usage: dua --apparent-size Count hard-linked files each time they are seen: dua --count-hard-links Aggregate the consumed space of one or more directories or files: dua aggregate Launch the terminal user interface: dua interactive Format printing byte counts: dua --format {{metric|binary|bytes|GB|GiB|MB|MiB}}
duc Duc is a collection of tools for indexing, inspecting and visualizing disk usage. Duc maintains a database of accumulated sizes of directories of the file system, allowing queries this database, or create fancy graphs to show where data is. More information: https://duc.zevv.nl/. Index the /usr directory, writing to the default database location ~/.duc.db: duc index {{/usr}} List all files and directories under /usr/local, showing relative file sizes in a [g]raph: duc ls -Fg {{/usr/local}}
duckdb Command-line client for DuckDB, an in-process analytical SQL engine. More information: https://duckdb.org. Start an interactive shell with a transient in-memory database: duckdb Start an interactive shell on a database file. If the file does not exist, a new database is created: duckdb {{path/to/dbfile}} Directly query a CSV, JSON, or Parquet file: duckdb -c "{{SELECT * FROM 'data_source.[csv|csv.gz|json|json.gz|parquet]'}}" Run a SQL script: duckdb -c ".read {{path/to/script.sql}}" Run query on database file and keep the interactive shell open: duckdb {{path/to/dbfile}} -cmd "{{SELECT DISTINCT * FROM tbl}}"
duf Disk Usage/Free Utility. More information: https://github.com/muesli/duf. List accessible devices: duf List everything (such as pseudo, duplicate or inaccessible file systems): duf --all Only show specified devices or mount points: duf {{path/to/directory1 path/to/directory2 ...}} Sort the output by a specified criteria: duf --sort {{size|used|avail|usage}}
dumpcap A network traffic dump tool. More information: https://www.wireshark.org/docs/man-pages/dumpcap.html. Display available interfaces: dumpcap --list-interfaces Capture packets on a specific interface: dumpcap --interface {{1}} Capture packets to a specific location: dumpcap --interface {{1}} -w {{path/to/output_file.pcapng}} Write to a ring buffer with a specific max file limit of a specific size: dumpcap --interface {{1}} -w {{path/to/output_file.pcapng}} --ring-buffer filesize:{{500000}} --ring-buffer files:{{10}}
dune A build system for OCaml programs. More information: https://dune.build. Build all targets: dune build Clean up the workspace: dune clean Run all tests: dune runtest Start the utop REPL with compiled modules automatically loaded into it, to remove the need to load them by hand: dune utop
duplicacy A lock-free deduplication cloud backup tool. More information: https://github.com/gilbertchen/duplicacy/wiki. Use current directory as the repository, initialize a SFTP storage and encrypt the storage with a password: duplicacy init -e {{snapshot_id}} {{sftp://user@192.168.2.100/path/to/storage/}} Save a snapshot of the repository to the default storage: duplicacy backup List snapshots of current repository: duplicacy list Restore the repository to a previously saved snapshot: duplicacy restore -r {{revision}} Check the integrity of snapshots: duplicacy check
duplicity Creates incremental, compressed, encrypted and versioned backups. Can also upload the backups to a variety of backend services. More information: http://duplicity.nongnu.org. Backup a directory via FTPS to a remote machine, encrypting it with a password: FTP_PASSWORD={{ftp_login_password}} PASSPHRASE={{encryption_password}} duplicity {{path/to/source/directory}} {{ftps://user@hostname/target/directory/path/}} Backup a directory to Amazon S3, doing a full backup every month: duplicity --full-if-older-than {{1M}} --use-new-style s3://{{bucket_name[/prefix]}} Delete versions older than 1 year from a backup stored on a WebDAV share: FTP_PASSWORD={{webdav_login_password}} duplicity remove-older-than {{1Y}} --force {{webdav[s]://user@hostname[:port]/some_dir}}
dust Dust gives an instant overview of which directories are using disk space. More information: https://github.com/bootandy/dust. Display information for the current directory: dust Display information for a space-separated list of directories: dust {{path/to/directory1}} {{path/to/directory2}} Display 30 directories (defaults to 21): dust --number-of-lines {{30}} Display information for the current directory, up to 3 levels deep: dust --depth {{3}} Display the biggest directories at the top in descending order: dust --reverse Ignore all files and directories with a specific name: dust --ignore-directory {{file_or_directory_name}}
dvc Data Version Control: like git for data. Some subcommands such as dvc commit have their own usage documentation. More information: https://dvc.org/. Check the DVC version: dvc --version Display general help: dvc --help Display help about a specific subcommand: dvc {{subcommand}} --help Execute a DVC subcommand: dvc {{subcommand}}
dvc add Add changed files to the index. More information: https://dvc.org/doc/command-reference/add. Add a single target file to the index: dvc add {{path/to/file}} Add a target directory to the index: dvc add {{path/to/directory}} Recursively add all the files in a given target directory: dvc add --recursive {{path/to/directory}} Add a target file with a custom .dvc filename: dvc add --file {{custom_name.dvc}} {{path/to/file}}
dvc checkout Checkout data files and directories from cache. More information: https://dvc.org/doc/command-reference/checkout. Checkout the latest version of all target files and directories: dvc checkout Checkout the latest version of a specified target: dvc checkout {{target}} Checkout a specific version of a target from a different Git commit/tag/branch: git checkout {{commit_hash|tag|branch}} {{target}} && dvc checkout {{target}}
dvc commit Record changes to DVC-tracked files in the project. More information: https://dvc.org/doc/command-reference/commit. Commit changes to all DVC-tracked files and directories: dvc commit Commit changes to a specified DVC-tracked target: dvc commit {{target}} Recursively commit all DVC-tracked files in a directory: dvc commit --recursive {{path/to/directory}}
dvc config Low level command to manage custom configuration options for dvc repositories. These configurations can be on project, local, global, or system level. More information: https://dvc.org/doc/command-reference/config. Get the name of the default remote: dvc config core.remote Set the project’s default remote: dvc config core.remote {{remote_name}} Unset the project’s default remote: dvc config --unset core.remote Get the config value for a specified key for the current project: dvc config {{key}}
dvc dag Visualize the pipeline(s) defined in dvc.yaml. More information: https://dvc.org/doc/command-reference/dag. Visualize the entire pipeline: dvc dag Visualize the pipeline stages up to a specified target stage: dvc dag {{target}} Export the pipeline in the dot format: dvc dag --dot > {{path/to/pipeline.dot}}
dvc destroy Remove all DVC files and directories from a DVC project. More information: https://dvc.org/doc/command-reference/destroy. Destroy the current project: dvc destroy Force destroy the current project: dvc destroy --force
dvc diff Show changes in DVC tracked file and directories. More information: https://dvc.org/doc/command-reference/diff. Compare DVC tracked files from different Git commits, tags, and branches w.r.t the current workspace: dvc diff {{commit_hash/tag/branch}} Compare the changes in DVC tracked files from 1 Git commit to another: dvc diff {{revision_b}} {{revision_a}} Compare DVC tracked files, along with their latest hash: dvc diff --show-hash {{commit}} Compare DVC tracked files, displaying the output as JSON: dvc diff --show-json --show-hash {{commit}}
dvc fetch Download DVC tracked files and directories from a remote repository. More information: https://dvc.org/doc/command-reference/fetch. Fetch the latest changes from the default remote upstream repository (if set): dvc fetch Fetch changes from a specific remote upstream repository: dvc fetch --remote {{remote_name}} Fetch the latest changes for a specific target/s: dvc fetch {{target/s}} Fetch changes for all branch and tags: dvc fetch --all-branches --all-tags Fetch changes for all commits: dvc fetch --all-commits
dvc freeze Freeze stages in the DVC pipeline. This prevents DVC from tracking changes in stage dependencies and re-execution until unfreeze. See also dvs unfreeze. More information: https://dvc.org/doc/command-reference/freeze. Freeze 1 or more specified stages: dvc freeze {{stage_name_a}} [{{stage_name_b}} ...]
dvc gc Remove unused files and directories from the cache or remote storage. More information: https://dvc.org/doc/command-reference/gc. Garbage collect from the cache, keeping only versions referenced by the current workspace: dvc gc --workspace Garbage collect from the cache, keeping only versions referenced by branch, tags, and commits: dvc gc --all-branches --all-tags --all-commits Garbage collect from the cache, including the default cloud remote storage (if set): dvc gc --all-commits --cloud Garbage collect from the cache, including a specific cloud remote storage: dvc gc --all-commits --cloud --remote {{remote_name}}
dvc init Initialize a new local DVC repository. More information: https://dvc.org/doc/command-reference/init. Initialize a new local repository: dvc init Initialize DVC without Git: dvc init --no-scm Initialize DVC in a subdirectory: cd {{path/to/subdir}} && dvc init --sudir
dvc unfreeze Unfreeze stages in the DVC pipeline. This allows DVC to start tracking changes in stage dependencies again after they were frozen. See also dvc freeze. More information: https://dvc.org/doc/command-reference/unfreeze. Unfreeze 1 or more specified stages: dvc unfreeze {{stage_name_a}} [{{stage_name_b}} ...]
dwebp dwebp decompresses WebP files into PNG, PAM, PPM or PGM images. Animated WebP files are not supported. More information: https://developers.google.com/speed/webp/docs/dwebp/. Convert a webp file into a png file: dwebp {{path/to/input.webp}} -o {{path/to/output.png}} Convert a webp file into a specific filetype: dwebp {{path/to/input.webp}} -bmp|-tiff|-pam|-ppm|-pgm|-yuv -o {{path/to/output}} Convert a webp file, using multi-threading if possible: dwebp {{path/to/input.webp}} -o {{path/to/output.png}} -mt Convert a webp file, but also crop and scale at the same time: dwebp {{input.
ebook-convert Can be used to convert e-books between common formats, e.g. PDF, EPUB and MOBI. Part of the Calibre e-book library tool. More information: https://manual.calibre-ebook.com/generated/en/ebook-convert.html. Convert an e-book into another format: ebook-convert {{path/to/input_file}} {{output_file}} Convert Markdown or HTML to e-book with TOC, title and author: ebook-convert {{path/to/input_file}} {{output_file}} --level1-toc="//h:h1" --level2-toc="//h:h2" --level3-toc="//h:h3" --title={{title}} --authors={{author}}
echo Print given arguments. More information: https://www.gnu.org/software/coreutils/echo. Print a text message. Note: quotes are optional: echo "{{Hello World}}" Print a message with environment variables: echo "{{My path is $PATH}}" Print a message without the trailing newline: echo -n "{{Hello World}}" Append a message to the file: echo "{{Hello World}}" >> {{file.txt}} Enable interpretation of backslash escapes (special characters): echo -e "{{Column 1\tColumn 2}}" Print the exit status of the last executed command (Note: In Windows Command Prompt and PowerShell the equivalent commands are echo %errorlevel% and $lastexitcode respectively): echo $?
ect Efficient Compression Tool. File optimizer written in C++. It supports .png, .jpg, .gzip and .zip files. More information: https://github.com/fhanau/Efficient-Compression-Tool. Compress a file: ect {{path/to/file.png}} Compress a file with specified compression level and multithreading (1=Fastest (Worst), 9=Slowest (Best), default is 3): ect -{{9}} --mt-deflate {{path/to/file.zip}} Compress all files in a directory recursively: ect -recurse {{path/to/directory}} Compress a file, keeping the original modification time: ect -keep {{path/to/file.png}} Compress a file, stripping metadata: ect -strip {{path/to/file.
ed The original Unix text editor. See also: awk, sed. More information: https://www.gnu.org/software/ed/manual/ed_manual.html. Start an interactive editor session with an empty document: ed Start an interactive editor session with an empty document and a specific prompt: ed --prompt='> ' Start an interactive editor session with user-friendly errors: ed --verbose Start an interactive editor session with an empty document and without diagnostics, byte counts and ‘!’ prompt: ed --quiet Start an interactive editor session without exit status change when command fails: ed --loose-exit-status
edgepaint Colorize edges of a graph layout to clarify crossing edges. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://graphviz.org/pdf/edgepaint.1.pdf. Colorize edges of one or more graph layouts (that already have layout information) to clarify crossing edges: edgepaint {{path/to/layout1.gv}} {{path/to/layout2.gv ...}} > {{path/to/output.gv}} Colorize edges using a color scheme. (See https://graphviz.org/doc/info/colors.html#brewer): edgepaint -color-scheme={{accent7}} {{path/to/layout.gv}} > {{path/to/output.gv}} Lay out a graph and colorize its edges, then convert to a PNG image: dot {{path/to/input.
eget Easily install prebuilt binaries from GitHub. More information: https://github.com/zyedidia/eget. Download a prebuilt binary for the current system from a repository on GitHub: eget {{zyedidia/micro}} Download from a URL: eget {{https://go.dev/dl/go1.17.5.linux-amd64.tar.gz}} Specify the location to place the downloaded files: eget {{zyedidia/micro}} --to={{path/to/directory}} Specify a git tag instead of using the latest version: eget {{zyedidia/micro}} --tag={{v2.0.10}} Install the latest pre-release instead of the latest stable version: eget {{zyedidia/micro}} --pre-release Only download the asset, skipping extraction: eget {{zyedidia/micro}} --download-only
egrep Find patterns in files using extended regular expression (supports ?, +, {}, () and |). More information: https://manned.org/egrep. Search for a pattern within a file: egrep "{{search_pattern}}" {{path/to/file}} Search for a pattern within multiple files: egrep "{{search_pattern}}" {{path/to/file1}} {{path/to/file2}} {{path/to/file3}} Search stdin for a pattern: cat {{path/to/file}} | egrep {{search_pattern}} Print file name and line number for each match: egrep --with-filename --line-number "{{search_pattern}}" {{path/to/file}} Search for a pattern in all files recursively in a directory, ignoring binary files: egrep --recursive --binary-files={{without-match}} "{{search_pattern}}" {{path/to/directory}}
eksctl The official CLI for Amazon EKS. More information: https://eksctl.io. Create a basic cluster: eksctl create cluster List the details about a cluster or all of the clusters: eksctl get cluster --name={{name}} --region={{region}} Create a cluster passing all configuration information in a file: eksctl create cluster --config-file={{path/to/file}} Create a cluster using a configuration file and skip creating nodegroups until later: eksctl create cluster --config-file=<path> --without-nodegroup Delete a cluster: eksctl delete cluster --name={{name}} --region={{region}}
electron-packager A tool used to build Electron app executables for Windows, Linux and macOS. Requires a valid package.json in the application directory. More information: https://github.com/electron/electron-packager. Package an application for the current architecture and platform: electron-packager "{{path/to/app}}" "{{app_name}}" Package an application for all architectures and platforms: electron-packager "{{path/to/app}}" "{{app_name}}" --all Package an application for 64-bit Linux: electron-packager "{{path/to/app}}" "{{app_name}}" --platform="{{linux}}" --arch="{{x64}}" Package an application for ARM macOS: electron-packager "{{path/to/app}}" "{{app_name}}" --platform="{{darwin}}" --arch="{{arm64}}"
electrum Ergonomic Bitcoin wallet and private key management. More information: https://electrum.org. Create a new wallet: electrum -w {{new_wallet.dat}} create Restore an existing wallet from seed offline: electrum -w {{recovery_wallet.dat}} restore -o Create a signed transaction offline: electrum mktx {{recipient}} {{amount}} -f 0.0000001 -F {{from}} -o Display all wallet receiving addresses: electrum listaddresses -a Sign a message: electrum signmessage {{address}} {{message}} Verify a message: electrum verifymessage {{address}} {{signature}} {{message}} Connect only to a specific electrum-server instance: electrum -p socks5:{{127.
elinks A text based browser similar to lynx. More information: http://elinks.or.cz. Start ELinks: elinks Quit elinks: Ctrl + C Dump output of webpage to console, colorizing the text with ANSI control codes: elinks -dump -dump-color-mode {{1}} {{url}}
elixir Elixir programming language interpreter. More information: https://elixir-lang.org. Run an Elixir file: elixir {{path/to/file}} Evaluate Elixir code by passing it as an argument: elixir -e "{{code}}"
elm Compile and run Elm source files. More information: https://elm-lang.org. Initialize an Elm project, generates an elm.json file: elm init Start interactive Elm shell: elm repl Compile an Elm file, output the result to an index.html file: elm make {{source}} Compile an Elm file, output the result to a JavaScript file: elm make {{source}} --output={{destination}}.js Start local web server that compiles Elm files on page load: elm reactor Install Elm package from https://package.
elvish Expressive programming language and a versatile interactive shell. See also: nu. More information: https://elv.sh. Start an interactive shell session: elvish Execute specific [c]ommands: elvish -c "{{echo 'elvish is executed'}}" Execute a specific script: elvish {{path/to/script.elv}}
emacs The extensible, customizable, self-documenting, real-time display editor. See also emacsclient. More information: https://www.gnu.org/software/emacs. Start Emacs and open a file: emacs {{path/to/file}} Open a file at a specified line number: emacs +{{line_number}} {{path/to/file}} Run an Emacs Lisp file as a script: emacs --script {{path/to/file.el}} Start Emacs in console mode (without an X window): emacs --no-window-system Start an Emacs server in the background (accessible via emacsclient): emacs --daemon Stop a running Emacs server and all its instances, asking for confirmation on unsaved files: emacsclient --eval '(save-buffers-kill-emacs)'
emacsclient Open files in an existing Emacs server. See also emacs. More information: https://www.emacswiki.org/emacs/EmacsClient. Open a file in an existing Emacs server (using GUI if available): emacsclient {{path/to/file}} Open a file in console mode (without an X window): emacsclient --no-window-system {{path/to/file}} Open a file in a new Emacs window: emacsclient --create-frame {{path/to/file}} Evaluate a command, printing the output to stdout, and then quit: emacsclient --eval '({{command}})' Specify an alternative editor in case no Emacs server is running: emacsclient --alternate-editor {{editor}} {{path/to/file}}
ember The Ember.js command-line utility. Used for creating and maintaining Ember.js applications. More information: https://cli.emberjs.com. Create a new Ember application: ember new {{my_new_app}} Create a new Ember addon: ember addon {{my_new_addon}} Build the project: ember build Build the project in production mode: ember build -prod Run the development server: ember serve Run the test suite: ember test Run a blueprint to generate something like a route or component: ember generate {{type}} {{name}}
emulator Manage Android emulators. More information: https://developer.android.com/studio/run/emulator-commandline. Start an Android emulator device: emulator -avd {{name}} Display the webcams on your development computer that are available for emulation: emulator -avd {{name}} -webcam-list Start an emulator overriding the facing back camera setting (use -camera-front for front camera): emulator -avd {{name}} -camera-back {{none|emulated|webcamN}} Start an emulator, with a maximum network speed: emulator -avd {{name}} -netspeed {{gsm|hscsd|gprs|edge|hsdpa|lte|evdo|full}} Start an emulator with network latency: emulator -avd {{name}} -netdelay {{gsm|hscsd|gprs|edge|hsdpa|lte|evdo|none}}
enca Detect and convert the encoding of text files. More information: https://github.com/nijel/enca. Detect file(s) encoding according to the system’s locale: enca {{path/to/file1 path/to/file2 ...}} Detect file(s) encoding specifying a language in the POSIX/C locale format (e.g. zh_CN, en_US): enca -L {{language}} {{path/to/file1 path/to/file2 ...}} Convert file(s) to a specific encoding: enca -L {{language}} -x {{to_encoding}} {{path/to/file1 path/to/file2 ...}} Create a copy of an existing file using a different encoding: enca -L {{language}} -x {{to_encoding}} < {{original_file}} > {{new_file}}
encfs Mounts or creates encrypted virtual filesystems. See also fusermount, which can unmount filesystems mounted by this command. More information: https://github.com/vgough/encfs. Initialize or mount an encrypted filesystem: encfs {{/path/to/cipher_dir}} {{/path/to/mount_point}} Initialize an encrypted filesystem with standard settings: encfs --standard {{/path/to/cipher_dir}} {{/path/to/mount_point}} Run encfs in the foreground instead of spawning a daemon: encfs -f {{/path/to/cipher_dir}} {{/path/to/mount_point}} Mount an encrypted snapshot of a plain directory: encfs --reverse {{path/to/plain_dir}} {{path/to/cipher_dir}}
enscript Convert text files to PostScript, HTML, RTF, ANSI, and overstrikes. More information: https://www.gnu.org/software/enscript. Generate a PostScript file from a text file: enscript {{path/to/input_file}} --output={{path/to/output_file}} Generate a file in a different language than PostScript: enscript {{path/to/input_file}} --language={{html|rtf|...}} --output={{path/to/output_file}} Generate a PostScript file with a landscape layout, splitting the page into columns (maximum 9): enscript {{path/to/input_file}} --columns={{num}} --landscape --output={{path/to/output_file}} Display available syntax highlighting languages and file formats: enscript --help-highlight Generate a PostScript file with syntax highlighting and color for a specified language: enscript {{path/to/input_file}} --color=1 --highlight={{language}} --output={{path/to/output_file}}
entr Run arbitrary commands when files change. More information: https://manned.org/entr. Rebuild with make if any file in any subdirectory changes: {{ag -l}} | entr {{make}} Rebuild and test with make if any .c source files in the current directory change: {{ls *.c}} | entr {{'make && make test'}} Send a SIGTERM to any previously spawned ruby subprocesses before executing ruby main.rb: {{ls *.rb}} | entr -r {{ruby main.rb}} Run a command with the changed file (/_) as an argument: {{ls *.
env Show the environment or run a program in a modified environment. More information: https://www.gnu.org/software/coreutils/env. Show the environment: env Run a program. Often used in scripts after the shebang (#!) for looking up the path to the program: env {{program}} Clear the environment and run a program: env -i {{program}} Remove variable from the environment and run a program: env -u {{variable}} {{program}} Set a variable and run a program: env {{variable}}={{value}} {{program}}
envoy A PHP-based task manager for Laravel remote servers. More information: https://laravel.com/docs/envoy. Initialize a configuration file: envoy init {{host_name}} Run a task: envoy run {{task_name}} Run a task from a specific project: envoy run --path {{path/to/directory}} {{task_name}} Run a task and continue on failure: envoy run --continue {{task_name}} Dump a task as a Bash script for inspection: envoy run --pretend {{task_name}} Connect to the specified server via SSH: envoy ssh {{server_name}}
envsubst Substitutes environment variables with their value in shell format strings. Variables to be replaced should be in either ${var} or $var format. More information: https://www.gnu.org/software/gettext/manual/html_node/envsubst-Invocation.html. Replace environment variables in stdin and output to stdout: echo '{{$HOME}}' | envsubst Replace environment variables in an input file and output to stdout: envsubst < {{path/to/input_file}} Replace environment variables in an input file and output to a file: envsubst < {{path/to/input_file}} > {{path/to/output_file}}
eol Show end-of-life dates (EoLs) for a number of products. More information: https://github.com/hugovk/norwegianblue. List all available products: eol Get EoLs of one or more products: eol {{product1 product2 ...}} Open the product webpage: eol {{product}} --web Get EoLs of a one or more products in a specific format: eol {{product1 product2 ...}} --format {{html|json|md|markdown|pretty|rst|csv|tsv|yaml}} Get EoLs of one or more products as a single markdown file: eol {{product1 product2 ...}} --format {{markdown}} > {{eol_report.
eqn Equation preprocessor for the groff (GNU Troff) document formatting system. See also troff and groff. More information: https://manned.org/eqn. Process input with equations, saving the output for future typesetting with groff to PostScript: eqn {{path/to/input.eqn}} > {{path/to/output.roff}} Typeset an input file with equations to PDF using the [me] macro package: eqn -T {{pdf}} {{path/to/input.eqn}} | groff -{{me}} -T {{pdf}} > {{path/to/output.pdf}}
erl Run and manage programs in the Erlang programming language. More information: https://www.erlang.org. Compile and run sequential Erlang program as a common script and then exit: erlc {{files}} && erl -noshell '{{mymodule:myfunction(arguments)}}, init:stop().' Connect to a running Erlang node: erl -remsh {{nodename}}@{{hostname}} -sname {{custom_shortname}} -hidden -setcookie {{cookie_of_remote_node}} Tell the Erlang shell to load modules from a directory: erl -pa {{directory_with_beam_files}}
ern Electrode Native platform command-line client. More information: https://native.electrode.io/reference/index-6. Create a new ern application (MiniApp): ern create-miniapp {{application_name}} Run one or more MiniApps in the iOS/Android Runner application: ern run-{{ios|android}} Create an Electrode Native container: ern create-container --miniapps {{/path/to/miniapp_directory}} --platform {{ios|android}} Publish an Electrode Native container to a local Maven repository: ern publish-container --publisher {{maven}} --platform {{android}} --extra {{'{"groupId":"com.walmart.ern","artifactId":"quickstart"}'}} Transform an iOS container into a pre-compiled binary framework: ern transform-container --platform {{ios}} --transformer {{xcframework}}
errno Look up errno names and descriptions. More information: https://joeyh.name/code/moreutils/. Lookup errno description by name or code: errno {{name|code}} List all errno names, codes, and descriptions: errno --list Search for code whose description contains all of the given text: errno --search {{text}} Search for code whose description contains all of the given text (all locales): errno --search-all-locales {{text}}
esbuild JavaScript bundler and minifier built for speed. More information: https://esbuild.github.io/. Bundle a JavaScript application and print to stdout: esbuild --bundle {{path/to/file.js}} Bundle a JSX application from stdin: esbuild --bundle --outfile={{path/to/out.js}} < {{path/to/file.jsx}} Bundle and minify a JSX application with source maps in production mode: esbuild --bundle --define:{{process.env.NODE_ENV=\"production\"}} --minify --sourcemap {{path/to/file.js}} Bundle a JSX application for a comma-separated list of browsers: esbuild --bundle --minify --sourcemap --target={{chrome58,firefox57,safari11,edge16}} {{path/to/file.jsx}} Bundle a JavaScript application for a specific node version: esbuild --bundle --platform={{node}} --target={{node12}} {{path/to/file.
eslint A pluggable linting utility for JavaScript and JSX. More information: https://eslint.org. Create the ESLint config file: eslint --init Lint one or more files: eslint {{path/to/file1.js path/to/file2.js ...}} Fix lint issues: eslint --fix Lint using the specified config: eslint -c {{path/to/config_file}} {{path/to/file1.js path/to/file2.js}}
espanso Cross-platform Text Expander written in Rust. More information: https://espanso.org. Check status: espanso status Edit the configuration: espanso edit config Install a package from the hub store (https://hub.espanso.org/): espanso install {{package}} Restart (required after installing a package, useful in case of failure): espanso restart
espeak Uses text-to-speech to speak through the default sound device. More information: http://espeak.sourceforge.net. Speak a phrase aloud: espeak "I like to ride my bike." Speak a file aloud: espeak -f {{path/to/file}} Save output to a WAV audio file, rather than speaking it directly: espeak -w {{filename.wav}} "It's GNU plus Linux" Use a different voice: espeak -v {{voice}}
esptool.py Bootloader utility for Espressif chips (e.g. ESP8266). More information: https://docs.espressif.com/projects/esptool/en/latest/esp32/. Flash a firmware file to an ESP chip with a given port and baud rate: sudo esptool.py --port {{port}} --baud {{baud_rate}} write_flash 0x0 {{path/to/firmware.bin}} Clear the flash of an ESP chip: sudo esptool.py --port {{port}} --baud {{baud_rate}} erase_flash
etcd A distributed, reliable key-value store for the most critical data of a distributed system. More information: https://etcd.io. Start a single-node etcd cluster: etcd Start a single-node etcd cluster, listening for client requests on a custom URL: etcd --advertise-client-urls {{http://127.0.0.1:1234}} --listen-client-urls {{http://127.0.0.1:1234}} Start a single-node etcd cluster with a custom name: etcd --name {{my_etcd_cluster}} Start a single-node etcd cluster with extensive metrics available at http://localhost:2379/debug/pprof/: etcd --enable-pprof --metrics extensive
etcdctl Interact with etcd, a highly-available key-value pair store. More information: https://etcd.io/docs/latest/dev-guide/interacting_v3/. Display the value associated with a specified key: etcdctl get {{my/key}} Store a key-value pair: etcdctl put {{my/key}} {{my_value}} Delete a key-value pair: etcdctl del {{my/key}} Store a key-value pair, reading the value from a file: etcdctl put {{my/file}} < {{path/to/file.txt}} Save a snapshot of the etcd keystore: etcdctl snapshot save {{path/to/snapshot.db}} Restore a snapshot of an etcd keystore (restart the etcd server afterwards): etcdctl snapshot restore {{path/to/snapshot.
eva Simple calculator REPL, similar to bc, with syntax highlighting and persistent history. More information: https://github.com/NerdyPepper/eva. Run the calculator in interactive mode: eva Calculate the result of an expression: eva "{{(1 + 2) * 2 ^ 2}}" Calculate an expression forcing the number of decimal places to 5: eva --fix {{5}} "{{5 / 3}}" Calculate an expression with sine and cosine: eva "{{sin(1) + cos(1)}}"
eval Execute arguments as a single command in the current shell and return its result. More information: https://manned.org/eval. Call echo with the “foo” argument: eval "{{echo foo}}" Set a variable in the current shell: eval "{{foo=bar}}"
evil-winrm Windows Remote Management (WinRM) shell for pentesting. Once connected, we get a PowerShell prompt on the target host. More information: https://github.com/Hackplayers/evil-winrm. Connect to a host: evil-winrm --ip {{ip}} --user {{user}} --password {{password}} Connect to a host, passing the password hash: evil-winrm --ip {{ip}} --user {{user}} --hash {{nt_hash}} Connect to a host, specifying directories for scripts and executables: evil-winrm --ip {{ip}} --user {{user}} --password {{password}} --scripts {{path/to/scripts}} --executables {{path/to/executables}} Connect to a host, using SSL: evil-winrm --ip {{ip}} --user {{user}} --password {{password}} --ssl --pub-key {{path/to/pubkey}} --priv-key {{path/to/privkey}}
ex Command-line text editor. See also: vim. More information: https://www.vim.org. Open a file: ex {{path/to/file}} Save and Quit: wq<Enter> Undo the last operation: undo<Enter> Search for a pattern in the file: /{{search_pattern}}<Enter> Perform a regular expression substitution in the whole file: %s/{{regular_expression}}/{{replacement}}/g<Enter> Insert text: i<Enter>{{text}}<C-c> Switch to Vim: visual<Enter>
exa A modern replacement for ls (List directory contents). More information: https://the.exa.website. List files one per line: exa --oneline List all files, including hidden files: exa --all Long format list (permissions, ownership, size and modification date) of all files: exa --long --all List files with the largest at the top: exa --reverse --sort={{size}} Display a tree of files, three levels deep: exa --long --tree --level={{3}} List files sorted by modification date (oldest first): exa --long --sort={{modified}}
exec Replace the current process with another process. More information: https://linuxcommand.org/lc3_man_pages/exech.html. Replace with the specified command using the current environment variables: exec {{command -with -flags}} Replace with the specified command, clearing environment variables: exec -c {{command -with -flags}} Replace with the specified command and login using the default shell: exec -l {{command -with -flags}} Replace with the specified command and change the process name: exec -a {{process_name}} {{command -with -flags}}
exenv A tool to easily install Elixir versions and manage application environments. More information: https://github.com/exenv/exenv. Display a list of installed versions: exenv versions Use a specific version of Elixir across the whole system: exenv global {{version}} Use a specific version of Elixir for the current application/project directory: exenv local {{version}} Show the currently selected Elixir version: exenv {{version}} Install a version of Elixir (requires elixir-build plugin https://github.com/mururu/elixir-build): exenv install {{version}}
exercism Download and solve problems. More information: https://exercism.org/docs/using/solving-exercises/working-locally. Configure the application token and the preferred workspace for Exercism: exercism configure --token={{your-application-token}} --workspace={{/path/to/preferred/workspace}} Download a specific exercise: exercism download --exercise={{exercise_slug}} --track={{track_slug}} Submit an exercise: exercism submit {{path/to/file}} Print the path to the solution workspace: exercism workspace
exfatlabel Get or set an exFAT filesystem label. More information: https://manned.org/exfatlabel. Display the current filesystem label: exfatlabel {{/dev/sda}} Set the filesystem label: exfatlabel {{/dev/sda}} {{new_label}}
exiftool Read and write meta information in files. More information: https://exiftool.org. Print the EXIF metadata for a given file: exiftool {{path/to/file}} Remove all EXIF metadata from the given files: exiftool -All= {{path/to/file1 path/to/file2 ...}} Remove GPS EXIF metadata from given image files: exiftool "-gps*=" {{path/to/image1 path/to/image2 ...}} Remove all EXIF metadata from the given image files, then re-add metadata for color and orientation: exiftool -All= -tagsfromfile @ -colorspacetags -orientation {{path/to/image1 path/to/image2 .
exit Exit the shell. More information: https://manned.org/exit. Exit the shell with the exit code of the last command executed: exit Exit the shell with the specified exit code: exit {{exit_code}}
exiv2 Image metadata manipulation tool. More information: https://www.exiv2.org/manpage.html. Print a summary of the image Exif metadata: exiv2 {{path/to/file}} Print all metadata (Exif, IPTC, XMP) with interpreted values: exiv2 -P kt {{path/to/file}} Print all metadata with raw values: exiv2 -P kv {{path/to/file}} Delete all metadata from an image: exiv2 -d a {{path/to/file}} Delete all metadata, preserving the file timestamp: exiv2 -d a -k {{path/to/file}} Rename the file, prepending the date and time from metadata (not from the file timestamp): exiv2 -r {{'%Y%m%d_%H%M%S_:basename:'}} {{path/to/file}}
expand Convert tabs to spaces. More information: https://www.gnu.org/software/coreutils/expand. Convert tabs in each file to spaces, writing to stdout: expand {{path/to/file}} Convert tabs to spaces, reading from stdin: expand Do not convert tabs after non blanks: expand -i {{path/to/file}} Have tabs a certain number of characters apart, not 8: expand -t={{number}} {{path/to/file}} Use a comma separated list of explicit tab positions: expand -t={{1,4,6}}
export Command to mark shell variables in the current environment to be exported with any newly forked child processes. More information: https://www.gnu.org/software/bash/manual/bash.html#index-export. Set a new environment variable: export {{VARIABLE}}={{value}} Remove an environment variable: export -n {{VARIABLE}} Mark a shell function for export: export -f {{FUNCTION_NAME}} Append something to the PATH variable: export PATH=$PATH:{{path/to/append}}
expose An open source tunnel application for sharing websites. More information: https://beyondco.de/docs/expose. Register your authentication token: expose token {{token}} Share the current working directory: expose Share the current working directory with a specific subdomain: expose --subdomain={{subdomain}} Share a local URL: expose share {{url}} Run the Expose server: expose serve Run the Expose server with a specific hostname: expose serve {{hostname}}
expr Evaluate expressions and manipulate strings. More information: https://www.gnu.org/software/coreutils/expr. Get the length of a specific string: expr length "{{string}}" Get the substring of a string with a specific length: expr substr "{{string}}" {{from}} {{length}} Match a specific substring against an anchored pattern: expr match "{{string}}" '{{pattern}}' Get the first char position from a specific set in a string: expr index "{{string}}" "{{chars}}" Calculate a specific mathematic expression: expr {{expression1}} {{+|-|*|/|%}} {{expression2}}
exrex Generate all/random matching strings for a regular expression. It can also simplify regular expressions. More information: https://github.com/asciimoo/exrex. Generate all possible strings that match a regular expression: exrex '{{regular_expression}}' Generate a random string that matches a regular expression: exrex --random '{{regular_expression}}' Generate at most 100 strings that match a regular expression: exrex --max-number {{100}} '{{regular_expression}}' Generate all possible strings that match a regular expression, joined by a custom delimiter string: exrex --delimiter "{{, }}" '{{regular_expression}}'
f3fix Edit the partition table of a fake flash drive. See also f3probe, f3write, f3read. More information: http://oss.digirati.com.br/f3/. Fill a fake flash drive with a single partition that matches its real capacity: sudo f3fix {{/dev/device_name}} Mark the partition as bootable: sudo f3fix --boot {{/dev/device_name}} Specify the filesystem: sudo f3fix --fs-type={{filesystem_type}} {{/dev/device_name}}
f3probe Probe a block device (e.g. a flash drive or a microSD card) for counterfeit flash memory. See also f3read, f3write, f3fix. More information: https://github.com/AltraMayor/f3. Probe a block device: sudo f3probe {{path/to/block_device}} Use the minimum about of RAM possible: sudo f3probe --min-memory {{path/to/block_device}} Time disk operations: sudo f3probe --time-ops {{path/to/block_device}}
f3read Validate .h2w files to test the real capacity of the drive. See also f3write, f3probe, f3fix. More information: http://oss.digirati.com.br/f3/. Validate a device by checking the files in a given directory: f3read {{path/to/mount_point}}
f3write Fill a drive out with .h2w files to test its real capacity. See also f3read, f3probe, f3fix. More information: http://oss.digirati.com.br/f3/. Write test files to a given directory, filling the drive: f3write {{path/to/mount_point}} Limit the write speed: f3write --max-write-rate={{kb_per_second}} {{path/to/mount_point}}
factor Prints the prime factorization of a number. More information: https://www.gnu.org/software/coreutils/factor. Display the prime-factorization of a number: factor {{number}} Take the input from stdin if no argument is specified: echo {{number}} | factor
fakedata Generate fake data using a large variety of generators. More information: https://github.com/lucapette/fakedata. List all valid generators: fakedata --generators Generate data using one or more generators: fakedata {{generator1}} {{generator2}} Generate data with a specific output format: fakedata --format {{csv|tab|sql}} {{generator}} Generate a given number of data items (defaults to 10): fakedata --limit {{n}} {{generator}} Generate data using a custom output template (the first letter of generator names must be capitalized): echo "{{\{\{Generator\}\}}}" | fakedata
false Returns a non-zero exit code. More information: https://www.gnu.org/software/coreutils/false. Return a non-zero exit code: false
n Tool to manage multiple node versions. More information: https://github.com/tj/n. Install a given version of node. If the version is already installed, it will be activated: n {{version}} Display installed versions and interactively activate one of them: n Remove a version: n rm {{version}} Execute a file with a given version: n use {{version}} {{file.js}} Output binary path for a version: n bin {{version}}
fast Test your download and upload speed using fast.com. More information: https://github.com/sindresorhus/fast-cli. Measure the current download speed: fast Measure the current upload speed in addition to download speed: fast --upload Display results on a single line to reduce spacing: fast --single-line
fastboot Communicate with connected Android devices when in bootloader mode (the one place adb doesn’t work). More information: https://cs.android.com/android/platform/superproject/+/master:system/core/fastboot. Unlock the bootloader: fastboot oem unlock Relock the bootloader: fastboot oem lock Reboot the device from fastboot mode into fastboot mode again: fastboot reboot bootloader Flash a given image: fastboot flash {{file.img}} Flash a custom recovery image: fastboot flash recovery {{file.img}} Display connected devices: fastboot devices Display all information of a device: fastboot getvar all
fastd VPN daemon. Works on Layer 2 or Layer 3, supports different encryption methods, used by Freifunk. More information: https://fastd.readthedocs.io/en/stable/. Start fastd with a specific configuration file: fastd --config {{path/to/fastd.conf}} Start a Layer 3 VPN with an MTU of 1400, loading the rest of the configuration parameters from a file: fastd --mode {{tap}} --mtu {{1400}} --config {{path/to/fastd.conf}} Validate a configuration file: fastd --verify-config --config {{path/to/fastd.conf}} Generate a new key: fastd --generate-key
fastfetch Display information about your operating system, software and hardware. More information: https://github.com/LinusDierheimer/fastfetch. Display system information: fastfetch Set the structure of the fetch: fastfetch --structure {{structure}} Load a custom config file: fastfetch --load-config {{path/to/config_file}} Set the logo to use: fastfetch --logo {{logo}} Set the color of the keys and title: fastfetch --color {{blue}}
fastlane Build and release mobile applications. More information: https://docs.fastlane.tools/actions/. Build and sign the iOS application in the current directory: fastlane run build_app Run pod install for the project in the current directory: fastlane run cocoapods Delete the derived data from Xcode: fastlane run clear_derived_data Remove the cache for pods: fastlane run clean_cocoapods_cache
fastmod A fast partial replacement for the codemod tool, replace and replace all in the whole codebase. Regexes are matched by Rust regex crate. More information: https://github.com/facebookincubator/fastmod. Replace a regex pattern in all files of the current directory, ignoring files on .ignore and .gitignore: fastmod {{regex_pattern}} {{replacement}} Replace a regex pattern in case-insensitive mode in specific files or directories: fastmod --ignore-case {{regex_pattern}} {{replacement}} -- {{path/to/file path/to/directory ...}} Replace a regex pattern in a specific directory in files filtered with a case-insensitive glob pattern: fastmod {{regex}} {{replacement}} --dir {{path/to/directory}} --iglob {{'**/*.
fc Open the most recent command and edit it. More information: https://manned.org/fc. Open in the default system editor: fc Specify an editor to open with: fc -e {{'emacs'}} List recent commands from history: fc -l List recent commands in reverse order: fc -l -r List commands in a given interval: fc '{{416}}' '{{420}}'
fc-cache Scan font directories to build font cache files. More information: https://manned.org/fc-cache. Generate font cache files: fc-cache Force a rebuild of all font cache files, without checking if cache is up-to-date: fc-cache -f Erase font cache files, then generate new font cache files: fc-cache -r
fc-list List available fonts installed on the system. More information: https://manned.org/fc-list. Return a list of installed fonts in your system: fc-list Return a list of installed fonts with given name: fc-list | grep '{{DejaVu Serif}}' Return the number of installed fonts in your system: fc-list | wc -l
fc-match Match available fonts. More information: https://manned.org/fc-match. Return a sorted list of best matching fonts: fc-match -s '{{DejaVu Serif}}'
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}}'
fd An alternative to find. Aims to be faster and easier to use than find. More information: https://github.com/sharkdp/fd. Recursively find files matching a specific pattern in the current directory: fd "{{string|regex}}" Find files that begin with foo: fd "^foo" Find files with a specific extension: fd --extension txt Find files in a specific directory: fd "{{string|regex}}" {{path/to/directory}} Include ignored and hidden files in the search: fd --hidden --no-ignore "{{string|regex}}" Execute a command on each search result returned: fd "{{string|regex}}" --exec {{command}}
fdp Render an image of a force-directed network graph from a graphviz file. Layouts: dot, neato, twopi, circo, fdp, sfdp, osage & patchwork. More information: https://graphviz.org/doc/info/command.html. Render a png image with a filename based on the input filename and output format (uppercase -O): fdp -T png -O {{path/to/input.gv}} Render a svg image with the specified output filename (lowercase -o): fdp -T svg -o {{path/to/image.svg}} {{path/to/input.gv}} Render the output in a specific format: fdp -T {{ps|pdf|svg|fig|png|gif|jpg|json|dot}} -O {{path/to/input.
fdroid F-Droid build tool. F-Droid is an installable catalog of FOSS (Free and Open Source Software) applications for the Android platform. More information: https://f-droid.org/. Build a specific app: fdroid build {{app_id}} Build a specific app in a build server VM: fdroid build {{app_id}} --server Publish the app to the local repository: fdroid publish {{app_id}} Install the app on every connected device: fdroid install {{app_id}} Check if the metadata is formatted correctly: fdroid lint --format {{app_id}}
fdroidcl F-Droid CLI client. More information: https://github.com/mvdan/fdroidcl. Fetch the F-Droid index: fdroidcl update Display info about an app: fdroidcl show {{app_id}} Download an APK file: fdroidcl download {{app_id}} Search for an app in the index: fdroidcl search {{search_pattern}} Install an app on a connected device: fdroidcl install {{app_id}}
fdupes Finds duplicate files in a given set of directories. More information: https://github.com/adrianlopezroche/fdupes. Search a single directory: fdupes {{path/to/directory}} Search multiple directories: fdupes {{directory1}} {{directory2}} Search a directory recursively: fdupes -r {{path/to/directory}} Search multiple directories, one recursively: fdupes {{directory1}} -R {{directory2}} Search recursively and replace duplicates with hardlinks: fdupes -rH {{path/to/directory}} Search recursively for duplicates and display interactive prompt to pick which ones to keep, deleting the others: fdupes -rd {{path/to/directory}}
feh Lightweight image viewing utility. More information: https://feh.finalrewind.org. View images locally or using a URL: feh {{path/to/images}} View images recursively: feh --recursive {{path/to/images}} View images without window borders: feh --borderless {{path/to/images}} Exit after the last image: feh --cycle-once {{path/to/images}} Set the slideshow cycle delay: feh --slideshow-delay {{seconds}} {{path/to/images}} Set your wallpaper (centered, filled, maximized, scaled or tiled): feh --bg-{{center|fill|max|scale|tile}} {{path/to/image}} Create a montage of all images within a directory. Outputs as a new image: feh --montage --thumb-height {{150}} --thumb-width {{150}} --index-info "{{\%nn%wx%h}}" --output {{path/to/montage_image.
feroxbuster Simple, fast, recursive content discovery tool written in Rust. Used to brute-force hidden paths on web servers and more. More information: https://epi052.github.io/feroxbuster-docs/docs/. Discover specific directories and files that match in the wordlist with extensions and 100 threads and a random user-agent: feroxbuster --url "{{https://example.com}}" --wordlist {{path/to/file}} --threads {{100}} --extensions "{{php,txt}}" --random-agent Enumerate directories without recursion through a specific proxy: feroxbuster --url "{{https://example.com}}" --wordlist {{path/to/file}} --no-recursion --proxy "{{http://127.0.0.1:8080}}" Find links in webpages: feroxbuster --url "{{https://example.
ffe Extract fields from a flat database file and write to another format. A configuration file is required to interpret the input and format the output. More information: http://ff-extractor.sourceforge.net/ffe.html. Display all input data using the specified data configuration: ffe --configuration={{path/to/config.ffe}} {{path/to/input}} Convert an input file to an output file in a new format: ffe --output={{path/to/output}} -c {{path/to/config.ffe}} {{path/to/input}} Select input structure and print format from definitions in ~/.fferc config file: ffe --structure={{structure}} --print={{format}} {{path/to/input}}
ffmpeg Video conversion tool. More information: https://ffmpeg.org. Extract the sound from a video and save it as MP3: ffmpeg -i {{video.mp4}} -vn {{sound}}.mp3 Save a video as GIF, scaling the height to 1000px and setting framerate to 15: ffmpeg -i {{video.mp4}} -vf 'scale=-1:{{1000}}' -r {{15}} {{output.gif}} Combine numbered images (frame_1.jpg, frame_2.jpg, etc) into a video or GIF: ffmpeg -i {{frame_%d.jpg}} -f image2 {{video.mpg|video.gif}} Quickly extract a single frame from a video at time mm:ss and save it as a 128x128 resolution image: ffmpeg -ss {{mm:ss}} -i {{video.
ffplay A simple and portable media player using the FFmpeg libraries and the SDL library. More information: https://ffmpeg.org/ffplay-all.html. Play a media file: ffplay {{path/to/file}} Play audio from a media file without a GUI: ffplay -nodisp {{path/to/file}} Play media passed by ffmpeg through stdin: ffmpeg -i {{path/to/file}} -c {{copy}} -f {{media_format}} - | ffplay - Play a video and show motion vectors in real time: ffplay -flags2 +export_mvs -vf codecview=mv=pf+bf+bb {{path/to/file}}
ffprobe Multimedia stream analyzer. More information: https://ffmpeg.org/ffprobe.html. Display all available stream info for a media file: ffprobe -v error -show_streams {{input.mp4}} Display media duration: ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 {{input.mp4}} Display the frame rate of a video: ffprobe -v error -select_streams v:0 -show_entries stream=avg_frame_rate -of default=noprint_wrappers=1:nokey=1 {{input.mp4}} Display the width or height of a video: ffprobe -v error -select_streams v:0 -show_entries stream={{width|height}} -of default=noprint_wrappers=1:nokey=1 {{input.mp4}} Display the average bit rate of a video: ffprobe -v error -select_streams v:0 -show_entries stream=bit_rate -of default=noprint_wrappers=1:nokey=1 {{input.
ffsend Easily and securely share files. More information: https://gitlab.com/timvisee/ffsend. Upload a file: ffsend upload {{path/to/file}} Download a file: ffsend download {{url}} Upload a file with password: ffsend upload {{path/to/file}} -p {{password}} Download a file protected by password: ffsend download {{path/to/file}} -p {{password}} Upload a file and allow 4 downloads: ffsend upload {{path/to/file}} -d {{4}}
fg Run jobs in foreground. More information: https://manned.org/fg. Bring most recently suspended or running background job to foreground: fg Bring a specific job to foreground: fg %{{job_id}}
fgrep Matches fixed strings in files. Equivalent to grep -F. More information: https://www.gnu.org/software/grep/manual/grep.html. Search for an exact string in a file: fgrep {{search_string}} {{path/to/file}} Search only lines that match entirely in files: fgrep -x {{path/to/file1}} {{path/to/file2}} Count the number of lines that match the given string in a file: fgrep -c {{search_string}} {{path/to/file}} Show the line number in the file along with the line matched: fgrep -n {{search_string}} {{path/to/file}} Display all lines except those that contain the search string: fgrep -v {{search_string}} {{path/to/file}}
figlet Generate ASCII banners from user input. See also: showfigfonts. More information: http://www.figlet.org/figlet-man.html. Generate by directly inputting text: figlet {{input_text}} Use a custom font file: figlet {{input_text}} -f {{path/to/font_file.flf}} Use a font from the default font directory (the extension can be omitted): figlet {{input_text}} -f {{font_filename}} Pipe command output through FIGlet: {{command}} | figlet Show available FIGlet fonts: showfigfonts {{optional_string_to_display}}
file Determine file type. More information: https://manned.org/file. Give a description of the type of the specified file. Works fine for files with no file extension: file {{path/to/file}} Look inside a zipped file and determine the file type(s) inside: file -z {{foo.zip}} Allow file to work with special or device files: file -s {{path/to/file}} Don’t stop at first file type match; keep going until the end of the file: file -k {{path/to/file}}
fin Docksal command-line utility. More information: https://docs.docksal.io/fin/fin/. Start the project in the current directory: fin project start Stop the project in the current directory: fin project stop Open a shell into a specific container: fin bash {{container_name}} Display logs of a specific container: fin logs {{container_name}} Display logs of a specific container and follow the log: fin logs -f {{container_name}}
find Find files or directories under the given directory tree, recursively. More information: https://manned.org/find. Find files by extension: find {{root_path}} -name '{{*.ext}}' Find files matching multiple path/name patterns: find {{root_path}} -path '{{**/path/**/*.ext}}' -or -name '{{*pattern*}}' Find directories matching a given name, in case-insensitive mode: find {{root_path}} -type d -iname '{{*lib*}}' Find files matching a given pattern, excluding specific paths: find {{root_path}} -name '{{*.py}}' -not -path '{{*/site-packages/*}}' Find files matching a given size range, limiting the recursive depth to “1”: find {{root_path}} -maxdepth 1 -size {{+500k}} -size {{-10M}}
finger User information lookup program. More information: https://manned.org/finger. Display information about currently logged in users: finger Display information about a specific user: finger {{username}} Display the user’s login name, real name, terminal name, and other information: finger -s Produce multiline output format displaying same information as -s as well as user’s home directory, home phone number, login shell, mail status, etc.: finger -l Prevent matching against user’s names and only use login names: finger -m
fio Flexible I/O tester. Tool that will spawn a number of threads or processes doing a particular type of I/O action. More information: https://fio.readthedocs.io/en/latest/fio_doc.html. Test random reads: sudo fio --filename={{path/to/file}} --direct=1 --rw=randread --bs=4k --ioengine=libaio --iodepth=256 --runtime=120 --numjobs=4 --time_based --group_reporting --name={{job_name}} --eta-newline=1 --readonly Test sequential reads: sudo fio --filename={{path/to/file}} --direct=1 --rw=read --bs=4k --ioengine=libaio --iodepth=256 --runtime=120 --numjobs=4 --time_based --group_reporting --name={{job_name}} --eta-newline=1 --readonly Test random read/write: sudo fio --filename={{path/to/file}} --size=500GB --direct=1 --rw=randrw --bs=4k --ioengine=libaio --iodepth=256 --runtime=120 --numjobs=4 --time_based --group_reporting --name={{job_name}} --eta-newline=1
firebase Test, manage, and deploy Firebase projects. More information: https://github.com/firebase/firebase-tools. Log in to https://console.firebase.google.com: firebase login List existing Firebase projects: firebase projects:list Start an interactive wizard to create a Firebase project in the current directory: firebase init Deploy code and assets to the current Firebase project: firebase deploy Start a local server to statically host the current Firebase project’s assets: firebase serve Start an interactive wizard to open one of many links of the current Firebase project in the default web browser: firebase open
firefox A free and open source web browser. More information: https://developer.mozilla.org/en-US/docs/Mozilla/Command_Line_Options. Launch Firefox and open a web page: firefox {{https://www.duckduckgo.com}} Open a new window: firefox --new-window {{https://www.duckduckgo.com}} Open a private (incognito) window: firefox --private-window Search for “wikipedia” using the default search engine: firefox --search "{{wikipedia}}" Launch Firefox in safe mode, with all extensions disabled: firefox --safe-mode Take a screenshot of a web page in headless mode: firefox --headless --screenshot {{path/to/output_file.png}} {{https://example.
fish The Friendly Interactive SHell, a command-line interpreter designed to be user friendly. More information: https://fishshell.com. Start an interactive shell session: fish Start an interactive shell session without loading startup configs: fish --no-config Execute specific commands: fish --command "{{echo 'fish is executed'}}" Execute a specific script: fish {{path/to/script.fish}} Check a specific script for syntax errors: fish --no-execute {{path/to/script.fish}} Execute specific commands from stdin: {{echo "echo 'fish is executed'"}} | fish
fisher Fisher, a fish-shell plugin manager. Install plugins by name or from a managed ‘fishfile’ for bundled installs. More information: https://github.com/jorgebucaran/fisher. Install one or more plugins: fisher {{plugin1}} {{plugin2}} Install a plugin from a GitHub gist: fisher {{gist_url}} Edit ‘fishfile’ manually with your favorite editor and install multiple plugins: {{editor}} ~/.config/fish/fishfile; fisher List installed plugins: fisher ls Update plugins: fisher update Remove one or more plugins: fisher remove {{plugin1}} {{plugin2}}
fkill Fabulously kill processes. Cross-platform. More information: https://github.com/sindresorhus/fkill. Run without arguments to use the interactive interface: fkill Kill the process by PID, name or port: fkill {{pid|name|:port}}
flac Encodes, decodes and tests FLAC files. More information: https://xiph.org/flac. Encode a WAV file to FLAC (this will create a FLAC file in the same location as the WAV file): flac {{path/to/file.wav}} Encode a WAV file to FLAC, specifying the output file: flac -o {{path/to/output.flac}} {{path/to/file.wav}} Decode a FLAC file to WAV, specifying the output file: flac -d -o {{path/to/output.wav}} {{path/to/file.flac}} Test a FLAC file for the correct encoding: flac -t {{path/to/file.
flake8 Tool to check the style and quality of Python code. More information: https://flake8.pycqa.org/. Lint a file or directory recursively: flake8 {{path/to/file_or_directory}} Lint a file or directory recursively and show the line on which each error occurred: flake8 --show-source {{path/to/file_or_directory}} Lint a file or directory recursively and ignore a list of rules. (All available rules can be found at flake8rules.com): flake8 --ignore {{rule1,rule2}} {{path/to/file_or_directory}} Lint a file or directory recursively but exclude files matching the given globs or substrings: flake8 --exclude {{substring1,glob2}} {{path/to/file_or_directory}}
flarectl Official CLI for Cloudflare. More information: https://github.com/cloudflare/cloudflare-go/blob/master/cmd/flarectl/README.md. Block a specific IP: flarectl firewall rules create --zone="{{example.com}}" --value="{{8.8.8.8}}" --mode="{{block}}" --notes="{{Block bad actor}}" Add a DNS record: flarectl dns create --zone="{{example.com}}" --name="{{app}}" --type="{{CNAME}}" --content="{{myapp.herokuapp.com}}" --proxy List all Cloudflare IPv4/IPv6 ranges: flarectl ips --ip-type {{ipv4|ipv6|all}} Create many new Cloudflare zones automatically with names from domains.txt: for domain in $(cat {{domains.txt}}); do flarectl zone info --zone=$domain; done List all firewall rules: flarectl firewall rules list
flask A general utility script for Flask applications. Loads the application defined in the FLASK_APP environment variable. More information: https://flask.palletsprojects.com/en/1.1.x/cli/. Run a development server: flask run Show the routes for the app: flask routes Run a Python interactive shell in the app’s context: flask shell
flex Lexical analyzer generator. Based on lex. Given the specification for a lexical analyzer, generates C code implementing it. More information: https://manned.org/flex. Generate an analyzer from a flex file: flex {{analyzer.l}} Specify the output file: flex --outfile {{analyzer.c}} {{analyzer.l}} Compile a C file generated by flex: cc {{path/to/lex.yy.c}} --output {{executable}}
flips Create and apply patches for IPS and BPS files. More information: https://github.com/Alcaro/Flips. Start Flips to create and apply patches interactively: flips Apply a patch and create a new ROM file: flips --apply {{patch.bps}} {{rom.smc}} {{hack.smc}} Create a patch from two ROMs: flips --create {{rom.smc}} {{hack.smc}} {{patch.bps}}
flite Speech synthesis engine. More information: http://www.festvox.org/flite/doc/. List all available voices: flite -lv Convert a text string to speech: flite -t "{{string}}" Convert the contents of a file to speech: flite -f {{path/to/file.txt}} Specify which voice to use: flite -voice {{file://path/to/filename.flitevox|url}} Store output into a wav file: flite -voice {{file://path/to/filename.flitevox|url}} -f {{path/to/file.txt}} -o {{output.wav}} Display version: flite --version
flow A static type checker for JavaScript. More information: https://flow.org. Run a flow check: flow Check which files are being checked by flow: flow ls Run a type coverage check on all files in a directory: flow batch-coverage --show-all --strip-root {{path/to/directory}} Display line-by-line type coverage stats: flow coverage --color {{path/to/file.jsx}}
fls List files and directories in an image file or device. More information: https://wiki.sleuthkit.org/index.php?title=Fls. Build a recursive fls list over a device, output paths will start with C: fls -r -m {{C:}} {{/dev/loop1p1}} Analyze a single partition, providing the sector offset at which the filesystem starts in the image: fls -r -m {{C:}} -o {{sector}} {{path/to/image_file}} Analyze a single partition, providing the timezone of the original system: fls -r -m {{C:}} -z {{timezone}} {{/dev/loop1p1}}
flutter Google’s free, open source, and cross-platform mobile app SDK. More information: https://github.com/flutter/flutter/wiki/The-flutter-tool. Initialize a new Flutter project in a directory of the same name: flutter create {{project_name}} Check if all external tools are correctly installed: flutter doctor List or change Flutter channel: flutter channel {{stable|beta|dev|master}} Run Flutter on all started emulators and connected devices: flutter run -d all Download all packages specified in pubspec.yaml: flutter pub get Run tests in a terminal from the root of the project: flutter test {{test/example_test.
fluxctl Command-line tool for Flux v1. More information: https://fluxcd.io/legacy/flux/references/fluxctl. List workloads currently running in the cluster on specific namespace: fluxctl --k8s-fwd-ns={{namespace}} list-workloads Show deployed and available images: fluxctl list-images Synchronize the cluster with the git repository: fluxctl sync Turn on automatic deployment for a workload: fluxctl automate
fly Command-line tool for concourse-ci. More information: https://concourse-ci.org/fly.html. Authenticate with and save concourse target: fly --target {{target_name}} login --team-name {{team_name}} -c {{https://ci.example.com}} List targets: fly targets List pipelines: fly -t {{target_name}} pipelines Upload or update a pipeline: fly -t {{target_name}} set-pipeline --config {{pipeline.yml}} --pipeline {{pipeline_name}} Unpause pipeline: fly -t {{target_name}} unpause-pipeline --pipeline {{pipeline_name}} Show pipeline configuration: fly -t {{target_name}} get-pipeline --pipeline {{pipeline_name}} Update local copy of fly: fly -t {{target_name}} sync
flyctl Command-line tool for flyctl.io. More information: https://github.com/superfly/flyctl. Sign into a Fly account: flyctl auth login Launch an application from a specific Dockerfile (the default path is the current working directory): flyctl launch --dockerfile {{path/to/dockerfile}} Open the current deployed application in the default web browser: flyctl open Deploy the Fly applications from a specific Dockerfile: flyctl deploy --dockerfile {{path/to/dockerfile}} Open the Fly Web UI for the current application in a web browser: flyctl dashboard
fmt Reformat a text file by joining its paragraphs and limiting the line width to given number of characters (75 by default). More information: https://www.gnu.org/software/coreutils/fmt. Reformat a file: fmt {{path/to/file}} Reformat a file producing output lines of (at most) n characters: fmt -w {{n}} {{path/to/file}} Reformat a file without joining lines shorter than the given width together: fmt -s {{path/to/file}} Reformat a file with uniform spacing (1 space between words and 2 spaces between paragraphs): fmt -u {{path/to/file}}
fnm Fast Node.js version manager. Install, uninstall or switch between Node.js versions. More information: https://github.com/Schniz/fnm. Install a specific version of Node.js: fnm install {{node_version}} List all available Node.js versions and highlight the default one: fnm list Use a specific version of Node.js in the current shell: fnm use {{node_version}} Set the default Node.js version: fnm default {{node_version}} Uninstall a given Node.js version: fnm uninstall {{node_version}}
fold Wrap each line in an input file to fit a specified width and print it to stdout. More information: https://manned.org/fold.1p. Wrap each line to default width (80 characters): fold {{path/to/file}} Wrap each line to width “30”: fold -w30 {{path/to/file}} Wrap each line to width “5” and break the line at spaces (puts each space separated word in a new line, words with length > 5 are wrapped): fold -w5 -s {{path/to/file}}
for Perform a command several times. More information: https://www.gnu.org/software/bash/manual/bash.html#Looping-Constructs. Execute the given commands for each of the specified items: for {{variable}} in {{item1 item2 ...}}; do {{echo "Loop is executed"}}; done Iterate over a given range of numbers: for {{variable}} in {{{from}}..{{to}}..{{step}}}; do {{echo "Loop is executed"}}; done Iterate over a given list of files: for {{variable}} in {{path/to/file1 path/to/file2 ...}}; do {{echo "Loop is executed"}}; done Iterate over a given list of directories: for {{variable}} in {{path/to/directory1/ path/to/directory2/ .
forever Server-side JavaScript application that makes sure Node.js applications run indefinitely (restarts after exit). More information: https://github.com/foreversd/forever. Start running a file forever (as a daemon): forever {{script}} List running “forever” processes (along with IDs and other details of “forever” processes): forever list Stop a running “forever” process: forever stop {{ID|pid|script}}
fortune Print a random quotation (fortune-cookie style). More information: https://manned.org/fortune. Print a quotation: fortune Print an offensive quotation: fortune -o Print a long quotation: fortune -l Print a short quotation: fortune -s List the available quotation database files: fortune -f Print a quotation from one of the database files listed by fortune -f: fortune {{path/to/file}}
fossa CLI for the Fossa service - Generate realtime license audits, vulnerability scans and reports about dependencies licenses. More information: https://github.com/fossas/fossa-cli. Initialize a .fossa.yml configuration file: fossa init Run a default project build: fossa build Analyze built dependencies: fossa analyze Generate reports: fossa report Test current revision against the FOSSA scan status and exit with errors if issues are found: fossa test
fossil Distributed version control system. Some subcommands such as fossil commit have their own usage documentation. More information: https://fossil-scm.org/. Check the Fossil version: fossil version Show general help (list available subcommands): fossil help Show help on a Fossil subcommand (like add, commit, etc.): fossil help {{subcommand}} Execute a Fossil subcommand: fossil {{subcommand}}
fossil add Put files or directories under Fossil version control. More information: https://fossil-scm.org/home/help/add. Put a file or directory under version control, so it will be in the current checkout: fossil add {{path/to/file_or_directory}} Remove all added files from the current checkout: fossil add --reset
fossil ci This command is an alias of fossil commit. More information: https://fossil-scm.org/home/help/commit. View documentation for the original command: tldr fossil-commit
fossil commit Commit files to a Fossil repository. More information: https://fossil-scm.org/home/help/commit. Create a new version containing all the changes in the current checkout; user will be prompted for a comment: fossil commit Create a new version containing all the changes in the current checkout, using the specified comment: fossil commit --comment "{{comment}}" Create a new version containing all the changes in the current checkout with a comment read from a specific file: fossil commit --message-file {{path/to/commit_message_file}}
fossil delete This command is an alias of fossil rm. More information: https://fossil-scm.org/home/help/delete. View documentation for the original command: tldr fossil rm
fossil forget This command is an alias of fossil rm, with the exception that it never removes files from the disk. More information: https://fossil-scm.org/home/help/forget. View documentation for the original command: tldr fossil rm
fossil init Initialize a new repository for a project. See also: fossil clone. More information: https://fossil-scm.org/home/help/init. Create a new repository in a named file: fossil init {{path/to/filename}}
fossil new This command is an alias of fossil init. More information: https://fossil-scm.org/home/help/new. View documentation for the original command: tldr fossil-init
fossil rm Remove files or directories from Fossil version control. See also fossil forget. More information: https://fossil-scm.org/home/help/rm. Remove a file or directory from Fossil version control: fossil rm {{path/to/file_or_directory}} Remove a file or directory from Fossil version control, and also delete it from the disk: fossil rm --hard {{path/to/file_or_directory}} Re-add all previously removed and uncommitted files to Fossil version control: fossil rm --reset
fping A more powerful ping which can ping multiple hosts. More information: https://fping.org. List alive hosts within a subnet generated from a netmask: fping -a -g 192.168.1.0/24 List alive hosts within a subnet generated from an IP range: fping -a -g 192.168.1.1 192.168.1.254 List unreachable hosts within a subnet generated from a netmask: fping -u -g 192.168.1.0/24
freshclam Update virus definitions for ClamAV antivirus program. More information: https://www.clamav.net. Update virus definitions: freshclam
from Prints mail header lines from the current user’s mailbox. More information: https://mailutils.org/manual/html_chapter/Programs.html#frm-and-from. List mail: from Display the number of messages stored: from --count List mail in the specified mailbox directory: MAIL={{path/to/mailbox}} from Print the mail from the specified address: from --sender={{me@example.com}}
fselect Find files with SQL-like queries. More information: https://github.com/jhspetersson/fselect. Select full path and size from temporary or config files in a given directory: fselect size, path from {{path/to/directory}} where name = {{'*.cfg'}} or name = {{'*.tmp'}} Find square images: fselect path from {{path/to/directory}} where width = height Find old-school rap 320kbps MP3 files: fselect path from {{path/to/directory}} where genre = {{Rap}} and bitrate = {{320}} and mp3_year lt {{2000}} Select only the first 5 results and output as JSON: fselect size, path from {{path/to/directory}} limit {{5}} into json
fswatch A cross-platform file change monitor. More information: https://emcrisostomo.github.io/fswatch. Run a Bash command on file creation, update or deletion: fswatch {{path/to/file}} | xargs -n 1 {{bash_command}} Watch one or more files and/or directories: fswatch {{path/to/file}} {{path/to/directory}} {{path/to/another_directory/**/*.js}} | xargs -n 1 {{bash_command}} Print the absolute paths of the changed files: fswatch {{path/to/directory}} | xargs -n 1 -I {} echo {} Filter by event type: fswatch --event {{Updated|Deleted|Created}} {{path/to/directory}} | xargs -n 1 {{bash_command}}
fswebcam Small and simple webcam for *nix. More information: https://www.sanslogic.co.uk/fswebcam. Take a picture: fswebcam {{filename}} Take a picture with custom resolution: fswebcam -r {{width}}x{{height}} {{filename}} Take a picture from selected device(Default is /dev/video0): fswebcam -d {{device}} {{filename}} Take a picture with timestamp(timestamp string is formatted by strftime): fswebcam --timestamp {{timestamp}} {{filename}}
ftp Tools to interact with a server via File Transfer Protocol. More information: https://manned.org/ftp. Connect to an FTP server: ftp {{ftp.example.com}} Connect to an FTP server specifying its IP address and port: ftp {{ip_address}} {{port}} Switch to binary transfer mode (graphics, compressed files, etc): binary Transfer multiple files without prompting for confirmation on every file: prompt off Download multiple files (glob expression): mget {{*.png}} Upload multiple files (glob expression): mput {{*.
fuck Corrects your previous console command. More information: https://github.com/nvbn/thefuck. Set the fuck alias to thefuck tool: eval "$(thefuck --alias)" Try to match a rule for the previous command: fuck Confirm the first choice immediately (correct argument depends on level of annoyance): fuck --{{yes|yeah|hard}}
func Azure Functions Core Tools: Develop and test Azure Functions locally. Local functions can connect to live Azure services, and can deploy a function app to an Azure subscription. More information: https://learn.microsoft.com/azure/azure-functions/functions-run-local. Create a new functions project: func init {{project}} Create a new function: func new Run functions locally: func start Publish your code to a function app in Azure: func azure functionapp publish {{function}} Download all settings from an existing function app: func azure functionapp fetch-app-settings {{function}}
funzip Print the content of the first (non-directory) member in an archive without extraction. More information: https://manned.org/funzip. Print the content of the first member in a .zip archive: funzip {{path/to/archive.zip}} Print the content in a .gz archive: funzip {{path/to/archive.gz}} Decrypt a .zip or .gz archive and print the content: funzip -password {{password}} {{path/to/archive}}
fusermount Mount and unmount FUSE filesystems. More information: https://manned.org/fusermount. Unmount a FUSE filesystem: fusermount -u {{path/to/mount_point}} Unmount a FUSE filesystem as soon as it becomes unused: fusermount -z {{path/to/mount_point}} Display version: fusermount --version
fzf Command-line fuzzy finder. Similar to sk. More information: https://github.com/junegunn/fzf. Start fzf on all files in the specified directory: find {{path/to/directory}} -type f | fzf Start fzf for running processes: ps aux | fzf Select multiple files with Shift + Tab and write to a file: find {{path/to/directory}} -type f | fzf --multi > {{path/to/file}} Start fzf with a specified query: fzf --query "{{query}}" Start fzf on entries that start with core and end with either go, rb, or py: fzf --query "^core go$ | rb$ | py$"
g++ Compiles C++ source files. Part of GCC (GNU Compiler Collection). More information: https://gcc.gnu.org. Compile a source code file into an executable binary: g++ {{path/to/source.cpp}} -o {{path/to/output_executable}} Display common warnings: g++ {{path/to/source.cpp}} -Wall -o {{path/to/output_executable}} Choose a language standard to compile for (C++98/C++11/C++14/C++17): g++ {{path/to/source.cpp}} -std={{c++98|c++11|c++14|c++17}} -o {{path/to/output_executable}} Include libraries located at a different path than the source file: g++ {{path/to/source.cpp}} -o {{path/to/output_executable}} -I{{path/to/header}} -L{{path/to/library}} -l{{library_name}} Compile and link multiple source code files into an executable binary: g++ -c {{path/to/source_1.
gacutil Global Assembly Cache (CAG) management utility. More information: https://manned.org/gacutil. Install the specified assembly into GAC: gacutil -i {{path/to/assembly.dll}} Uninstall the specified assembly from GAC: gacutil -i {{assembly_display_name}} Print the content of GAC: gacutil -l
gallery-dl Download image galleries and collections from several image hosting sites. More information: https://github.com/mikf/gallery-dl. Download images from the specified URL: gallery-dl "{{url}}" Retrieve pre-existing cookies from your web browser (useful for sites that require login): gallery-dl --cookies-from-browser {{browser}} "{{url}}" Get the direct URL of an image from a site supporting authentication with username and password: gallery-dl --get-urls --username {{username}} --password {{password}} "{{url}}" Filter manga chapters by chapter number and language: gallery-dl --chapter-filter "{{10 <= chapter < 20}}" --option "lang={{language_code}}" "{{url}}"
ganache-cli Command-line version of Ganache, your personal blockchain for Ethereum development. More information: https://www.trufflesuite.com/ganache. Run Ganache: ganache-cli Run Ganache with a specific number of accounts: ganache-cli --accounts={{number_of_accounts}} Run Ganache and lock available accounts by default: ganache-cli --secure Run Ganache server and unlock specific accounts: ganache-cli --secure --unlock "{{account_private_key1}}" --unlock "{{account_private_key2}}" Run Ganache with a specific account and balance: ganache-cli --account="{{account_private_key}},{{account_balance}}" Run Ganache with accounts with a default balance: ganache-cli --defaultBalanceEther={{default_balance}}
gatsby Static site generator for React. More information: https://gatsbyjs.org. Create a new site: gatsby new {{site_name}} Create a new site with a Gatsby ‘starter’: gatsby new {{site_name}} {{url_of_starter_github_repo}} Start a live-reloading local development server: gatsby develop Perform a production build and generate static HTML: gatsby build Start a local server which serves the production build: gatsby serve
gcal Displays calendar. More information: https://www.gnu.org/software/gcal. Display calendar for the current month: gcal Display calendar for the month of February of the year 2010: gcal {{2}} {{2010}} Provide calendar sheet with week numbers: gcal --with-week-number Change starting day of week to 1st day of the week (Monday): gcal --starting-day={{1}} Display the previous, current and next month surrounding today: gcal .
gcalcli Command-line tool to interact with Google Calendar. Requests Google API authorization upon first launch. More information: https://github.com/insanum/gcalcli. List your events for all your calendars over the next 7 days: gcalcli agenda Show events starting from or between specific dates (also takes relative dates e.g. “tomorrow”): gcalcli agenda {{mm/dd}} [{{mm/dd}}] List events from a specific calendar: gcalcli --calendar {{calendar_name}} agenda Display an ASCII calendar of events by week: gcalcli calw
gcc Preprocess and compile C and C++ source files, then assemble and link them together. More information: https://gcc.gnu.org. Compile multiple source files into an executable: gcc {{path/to/source1.c path/to/source2.c ...}} -o {{path/to/output_executable}} Show common warnings, debug symbols in output, and optimize without affecting debugging: gcc {{path/to/source.c}} -Wall -g -Og -o {{path/to/output_executable}} Include libraries from a different path: gcc {{path/to/source.c}} -o {{path/to/output_executable}} -I{{path/to/header}} -L{{path/to/library}} -l{{library_name}} Compile source code into Assembler instructions: gcc -S {{path/to/source.
gcloud The official CLI tool for Google Cloud Platform. More information: https://cloud.google.com/sdk/gcloud. List all properties in one’s active configuration: gcloud config list Log in to Google account: gcloud auth login Set the active project: gcloud config set project {{project_name}} SSH into a virtual machine instance: gcloud compute ssh {{user}}@{{instance}} Display all Google Compute Engine instances in a project. Instances from all zones are listed by default: gcloud compute instances list
gcpdiag Google Cloud Platform troubleshooting and diagnostics tool. Run in a docker container or in GCP Cloudshell. More information: https://github.com/GoogleCloudPlatform/gcpdiag. Run gcpdiag on your project, returning all rules: gcpdiag lint --project={{gcp_project_id}} Hide rules that are ok: gcpdiag lint --project={{gcp_project_id}} --hide-ok Authenticate using a service account private key file: gcpdiag lint --project={{gcp_project_id}} --auth-key {{path/to/private_key}} Search logs and metrics from a number of days back (default: 3 days): gcpdiag lint --project={{gcp_project_id}} --within-days {{number}}
gdal_contour Create contour lines and polygons from a digital elevation model. More information: https://gdal.org/programs/gdal_contour.html. Create a vector dataset with contour lines spread over an 100-meter [i]nterval while [a]ttributing the elevation property as “ele”: gdal_contour -a {{ele}} -i {{100.0}} {{path/to/input.tif}} {{path/to/output.gpkg}} Create a vector dataset with [p]olygons spread over an 100-meter [i]nterval: gdal_contour -i {{100.0}} -p {{path/to/input.tif}} {{path/to/output.gpkg}}
gdal_translate Convert raster data between different formats. More information: https://gdal.org/programs/gdal_translate. Convert a raster dataset to JPEG format: gdal_translate -of {{JPEG}} {{path/to/input.tif}} {{path/to/output.jpeg}} Assign a projection to a raster dataset: gdal_translate -a_srs {{EPSG:4326}} {{path/to/input.tif}} {{path/to/output.tif}} Reduce the size of a raster dataset to a specific fraction: gdal_translate -outsize {{40%}} {{40%}} {{path/to/input.tif}} {{path/to/output.tif}} Convert a GeoTiff to a Cloud Optimized GeoTiff: gdal_translate {{path/to/input.tif}} {{path/to/output.tif}} -of COG -co COMPRESS=LZW
gdal2tiles.py Generate TMS or XYZ tiles for a raster dataset. More information: https://gdal.org/programs/gdal2tiles.html. Generate TMS tiles for the zoom levels 2-5 of a raster dataset: gdal2tiles.py --zoom={{2-5}} {{path/to/input.tif}} {{path/to/output_directory}} Generate XYZ tiles for the zoom levels 2-5 of a raster dataset: gdal2tiles.py --zoom={{2-5}} --xyz {{path/to/input.tif}} {{path/to/output_directory}}
gdaladdo Build overview images of raster datasets. More information: https://gdal.org/programs/gdaladdo. Build overview images of a raster dataset using the “average” [r]esampling method: gdaladdo -r average {{path/to/input.tif}}
gdalbuildvrt Build Virtual Datasets from a list of existing datasets. More information: https://gdal.org/programs/gdalbuildvrt.html. Make a virtual mosaic from all TIFF files contained in a directory: gdalbuildvrt {{path/to/output.vrt}} {{path/to/input_directory/*.tif}} Make a virtual mosaic from files whose name is specified in a text file: gdalbuildvrt -input_file_list {{path/to/list.txt}} {{path/to/output.vrt}} Make an RGB virtual mosaic from 3 single-band input files: gdalbuildvrt -separate {{path/to/rgb.vrt}} {{path/to/red.tif}} {{path/to/green.tif}} {{path/to/blue.tif}} Make a virtual mosaic with blue background color (RGB: 0 0 255): gdalbuildvrt -hidenodata -vrtnodata "{{0 0 255}}" {{path/to/output.
gdaldem Tool to analyze and visualize digital elevation models (DEM). More information: https://gdal.org/programs/gdaldem. Compute the hillshade of a DEM: gdaldem hillshade {{path/to/input.tif}} {{path/to/output.tif}} Compute the slope of a DEM: gdaldem slope {{path/to/input.tif}} {{path/to/output.tif}} Compute the aspect of a DEM: gdaldem aspect {{path/to/input.tif}} {{path/to/output.tif}}
gdalinfo List various information about a GDAL supported raster dataset. More information: https://gdal.org/programs/gdalinfo.html. List all supported raster formats: gdalinfo --formats List information about a specific raster dataset: gdalinfo {{path/to/input.tif}} List information about a specific raster dataset in JSON format: gdalinfo -json {{path/to/input.tif}} Show histogram values of a specific raster dataset: gdalinfo -hist {{path/to/input.tif}} List information about a Web Map Service (WMS): gdalinfo WMS:{{https://services.meggsimum.de/geoserver/ows}} List information about a specific dataset of a Web Map Service (WMS): gdalinfo WMS:{{https://services.
gdalwarp Image reprojection and warping utility. More information: https://gdal.org/programs/gdalwarp. Reproject a raster dataset: gdalwarp -t_srs {{EPSG:4326}} {{path/to/input.tif}} {{path/to/output.tif}} Crop a raster dataset by using specific coordinates: gdalwarp -te {{min_x}} {{min_y}} {{max_x}} {{max_y}} -te_srs {{EPSG:4326}} {{path/to/input.tif}} {{path/to/output.tif}} Crop a raster dataset using a vector layer: gdalwarp -cutline {{path/to/area_to_cut.geojson}} -crop_to_cutline {{path/to/input.tif}} {{path/to/output.tif}}
gdb The GNU Debugger. More information: https://www.gnu.org/software/gdb. Debug an executable: gdb {{executable}} Attach a process to gdb: gdb -p {{procID}} Debug with a core file: gdb -c {{core}} {{executable}} Execute given GDB commands upon start: gdb -ex "{{commands}}" {{executable}} Start gdb and pass arguments to the executable: gdb --args {{executable}} {{argument1}} {{argument2}}
gdrive Command-line tool to interact with Google Drive. Folder/file ID can be obtained from the Google Drive folder or ID URL. More information: https://github.com/gdrive-org/gdrive. Upload a local path to the parent folder with the specified ID: gdrive upload -p {{id}} {{path/to/file_or_folder}} Download file or directory by ID to current directory: gdrive download {{id}} Download to a given local path by its ID: gdrive download --path {{path/to/folder}} {{id}} Create a new revision of an ID using a given file or folder: gdrive update {{id}} {{path/to/file_or_folder}}
gdu Disk usage analyzer with console interface. More information: https://github.com/dundee/gdu. Interactively show the disk usage of the current directory: gdu Interactively show the disk usage of a given directory: gdu {{path/to/directory}} Interactively show the disk usage of all mounted disks: gdu --show-disks Interactively show the disk usage of the current directory but ignore some sub-directories: gdu --ignore-dirs {{path/to/directory1,path/to/directory2,...}} Ignore paths by regular expression: gdu --ignore-dirs-pattern '{{.*[abc]+}}' Ignore hidden directories: gdu --no-hidden
gem A package manager for the Ruby programming language. More information: https://guides.rubygems.org. Search for remote gem(s) and show all available versions: gem search {{regular_expression}} --all Install the latest version of a gem: gem install {{gem_name}} Install a specific version of a gem: gem install {{gem_name}} --version {{1.0.0}} Install the latest matching (SemVer) version of a gem: gem install {{gem_name}} --version '~> {{1.0}}' Update a gem: gem update {{gem_name}} List all local gems: gem list
geth The go-ethereum command-line interface. More information: https://geth.ethereum.org. Connect to the main Ethereum network and automatically download the full node: geth Connect to the Ropsten test network: geth --testnet Create a new account: geth account new Enable mining: geth --mine
gfortran Preprocess and compile Fortran source files, then assemble and link them together. More information: https://gcc.gnu.org/wiki/GFortran. Compile multiple source files into an executable: gfortran {{path/to/source1.f90 path/to/source2.f90 ...}} -o {{path/to/output_executable}} Show common warnings, debug symbols in output, and optimize without affecting debugging: gfortran {{path/to/source.f90}} -Wall -g -Og -o {{path/to/output_executable}} Include libraries from a different path: gfortran {{path/to/source.f90}} -o {{path/to/output_executable}} -I{{path/to/mod_and_include}} -L{{path/to/library}} -l{{library_name}} Compile source code into Assembler instructions: gfortran -S {{path/to/source.f90}}
gh Work seamlessly with GitHub. Some subcommands such as gh config have their own usage documentation. More information: https://cli.github.com/. Clone a GitHub repository locally: gh repo clone {{owner}}/{{repository}} Create a new issue: gh issue create View and filter the open issues of the current repository: gh issue list View an issue in the default web browser: gh issue view --web {{issue_number}} Create a pull request: gh pr create View a pull request in the default web browser: gh pr view --web {{pr_number}}
gh alias Manage GitHub CLI command aliases. More information: https://cli.github.com/manual/gh_alias. Display the subcommand help: gh alias List all the aliases gh is configured to use: gh alias list Create a gh subcommand alias: gh alias set {{pv}} '{{pr view}}' Set a shell command as a gh subcommand: gh alias set --shell {{alias_name}} {{command}} Delete a command shortcut: gh alias delete {{alias_name}}
gh api Makes authenticated HTTP requests to the GitHub API and prints the response. More information: https://cli.github.com/manual/gh_api. Display the subcommand help: gh api --help Display the releases for the current repository in JSON format: gh api repos/:owner/:repo/releases Create a reaction for a specific issue: gh api --header {{Accept:application/vnd.github.squirrel-girl-preview+json}} --raw-field '{{content=+1}}' {{repos/:owner/:repo/issues/123/reactions}} Display the result of a GraphQL query in JSON format: gh api graphql --field {{name=':repo'}} --raw-field '{{query}}' Send a request using a custom HTTP method: gh api --method {{POST}} {{endpoint}}
gh auth Authenticate with a GitHub host. More information: https://cli.github.com/manual/gh_auth. Log in with interactive prompt: gh auth login Log in with a token from stdin (created in https://github.com/settings/tokens): echo {{your_token}} | gh auth login --with-token Check if you are logged in: gh auth status Log out: gh auth logout Log in with a specific GitHub Enterprise Server: gh auth login --hostname {{github.example.com}} Refresh the session to ensure authentication credentials have the correct minimum scopes (removes additional scopes requested previously): gh auth refresh
gh browse Open a GitHub repository in the browser or print the URL. More information: https://cli.github.com/manual/gh_browse. Open the homepage of the current repository in the default web browser: gh browse Open the homepage of a specific repository in the default web browser: gh browse {{owner}}/{{repository}} Open the settings page of the current repository in the default web browser: gh browse --settings Open the wiki of the current repository in the default web browser: gh browse --wiki
gh codespace Connect and manage your codespaces in GitHub. More information: https://cli.github.com/manual/gh_codespace. Create a codespace in GitHub interactively: gh codespace create List all available codespaces: gh codespace list Connect to a codespace via SSH interactively: gh codespace ssh Transfer a specific file to a codespace interactively: gh codespace cp {{path/to/source_file}} remote:{{path/to/remote_file}} List the ports of a codespace interactively: gh codespace ports Display the logs from a codespace interactively: gh codespace logs
gh completion Generate shell completion scripts for GitHub CLI commands. More information: https://cli.github.com/manual/gh_completion. Display the subcommand help: gh completion Print a completion script: gh completion --shell {{bash|zsh|fish|powershell}} Append the gh completion script to ~/.bashrc: gh completion --shell {{bash}} >> {{~/.bashrc}} Append the gh completion script to ~/.zshrc: gh completion --shell {{zsh}} >> {{~/.zshrc}}
gh config Change configuration for GitHub cli. More information: https://cli.github.com/manual/gh_config. Display what Git protocol is being used: gh config get git_protocol Set protocol to SSH: gh config set git_protocol {{ssh}} Use delta in side-by-side mode as the default pager for all gh commands: gh config set pager '{{delta --side-by-side}}' Set text editor to Vim: gh config set editor {{vim}} Reset to default text editor: gh config set editor {{""}} Disable interactive prompts: gh config set prompt {{disabled}}
gh cs This command is an alias of gh codespace. More information: https://cli.github.com/manual/gh_codespace. View documentation for the original command: tldr gh-codespace
gh environment Display help about environment variables for the GitHub CLI command. More information: https://cli.github.com/manual/gh_help_environment. Display help about environment variables that can be used with gh: gh environment
gh extension Manage extensions for the GitHub CLI. More information: https://cli.github.com/manual/gh_extension. Initialize a new GitHub CLI extension project in a directory of the same name: gh extension create {{extension_name}} Install an extension from a GitHub repository: gh extension install {{owner}}/{{repository}} List installed extensions: gh extension list Upgrade a specific extension: gh extension upgrade {{extension_name}} Upgrade all extensions: gh extension upgrade --all List installed extensions: gh extension list Remove an extension: gh extension remove {{extension_name}}
gh formatting Formatting options for JSON data exported from gh GitHub CLI command. More information: https://cli.github.com/manual/gh_help_formatting. Display help about formatting JSON output from gh using jq: gh formatting
gh gist Work with GitHub Gists. More information: https://cli.github.com/manual/gh_gist. Create a new Gist from a space-separated list of files: gh gist create {{path/to/file1 path/to/file2 ...}} Create a new Gist with a specific [desc]ription: gh gist create {{path/to/file1 path/to/file2 ...}} --desc "{{description}}" Edit a Gist: gh gist edit {{id|url}} List up to 42 Gists owned by the currently logged in user: gh gist list --limit {{42}} View a Gist in the default browser without rendering Markdown: gh gist view {{id|url}} --web --raw
gh help Display help about the GitHub CLI command. More information: https://cli.github.com/manual/gh_help. Display general help: gh help Display help for the gh help subcommand: gh help --help Display help about environment variables that can be used with gh: gh help environment Display a markdown reference of all gh commands: gh help reference Display help about formatting JSON output from gh using jq: gh help formatting Display help about using gh with MinTTY: gh help mintty
gh issue Manage GitHub issues. More information: https://cli.github.com/manual/gh_issue. Display a specific issue: gh issue view {{issue_number}} Display a specific issue in the default web browser: gh issue view {{issue_number}} --web Create a new issue in the default web browser: gh issue create --web List the last 10 issues with the bug label: gh issue list --limit {{10}} --label "{{bug}}" List closed issues made by a specific user: gh issue list --state closed --author {{username}}
gh issue create Create GitHub issues on a repository. More information: https://cli.github.com/manual/gh_issue_create. Create a new issue against the current repository interactively: gh issue create Create a new issue with the bug label interactively: gh issue create --label "{{bug}}" Create a new issue interactively and assign it to the specified users: gh issue create --assignee {{user1,user2,...}} Create a new issue with a title, body and assign it to the current user: gh issue create --title "{{title}}" --body "{{body}}" --assignee "{{@me}}"
gh label Work with GitHub labels. More information: https://cli.github.com/manual/gh_label. List labels for the repository in the current directory: gh label list View labels for the repository in the current directory in the default web browser: gh label list --web Create a label with a specific name, description and color in hexadecimal format for the repository in the current directory: gh label create {{name}} --description "{{description}}" --color {{color_hex}} Delete a label for the repository in the current directory, prompting for confirmation: gh label delete {{name}}
gh mintty Display help about MinTTY integration for the GitHub CLI command. More information: https://cli.github.com/manual/gh_help_mintty. Display help about using gh with MinTTY: gh mintty
gh pr Manage GitHub pull requests. Some subcommands such as gh pr create have their own usage documentation. More information: https://cli.github.com/manual/gh_pr. Create a pull request: gh pr create Check out a specific pull request locally: gh pr checkout {{pr_number}} View the changes made in the pull request for the current branch: gh pr diff Approve the pull request for the current branch: gh pr review --approve Merge the pull request associated with the current branch interactively: gh pr merge
gh pr create Manage GitHub pull requests. More information: https://cli.github.com/manual/gh_pr_create. Interactively create a pull request: gh pr create Create a pull request, determining the title and description from the commit messages of the current branch: gh pr create --fill Create a draft pull request: gh pr create --draft Create a pull request specifying the base branch, title, and description: gh pr create --base {{base_branch}} --title "{{title}}" --body "{{body}}" Start opening a pull request in the default web browser: gh pr create --web
gh pr merge Merge GitHub pull requests. More information: https://cli.github.com/manual/gh_pr_merge. Merge the pull request associated with the current branch interactively: gh pr merge Merge the specified pull request, interactively: gh pr merge {{pr_number}} Merge the pull request, removing the branch on both the local and the remote: gh pr merge --delete-branch Merge the current pull request with the specified merge strategy: gh pr merge --{{merge|squash|rebase}} Merge the current pull request with the specified merge strategy and commit message: gh pr merge --{{merge|squash|rebase}} --subject {{commit_message}}
gh reference Display a reference about the GitHub CLI command. More information: https://cli.github.com/manual/gh_help_reference. Display a markdown reference of all gh commands: gh reference
gh release Manage GitHub releases. More information: https://cli.github.com/manual/gh_release. List releases in a GitHub repository, limited to 30 items: gh release list Display information about a specific release: gh release view {{tag}} Create a new release: gh release create {{tag}} Delete a specific release: gh release delete {{tag}} Download assets from a specific release: gh release download {{tag}} Upload assets to a specific release: gh release upload {{tag}} {{path/to/file1 path/to/file2 ...}}
gh repo Work with GitHub repositories. More information: https://cli.github.com/manual/gh_repo. Create a new repository (if the repository name is not set, the default name will be the name of the current directory): gh repo create {{name}} Clone a repository: gh repo clone {{owner}}/{{repository}} Fork and clone a repository: gh repo fork {{owner}}/{{repository}} --clone View a repository in the default web browser: gh repo view {{repository}} --web List repositories owned by a specific user or organization (if the owner is not set, the default owner will be the currently logged in user): gh repo list {{owner}}
gh run View, run and watch recent GitHub Actions workflow runs. More information: https://cli.github.com/manual/gh_run. Interactively select a run to see information about the jobs: gh run view Display information about a specific run: gh run view {{workflow_run_number}} Display information about the steps of a job: gh run view --job={{job_number}} Display the log of a job: gh run view --job={{job_number}} --log Check a specific workflow and exit with a non-zero status if the run failed: gh run view {{workflow_run_number}} --exit-status && {{echo "run pending or passed"}}
gh screensaver Extension for GitHub CLI that runs animated terminal screensavers. See also: gh extension. More information: https://github.com/vilmibm/gh-screensaver. Run a random screensaver: gh screensaver Run a specific screensaver: gh screensaver --saver {{fireworks|marquee|pipes|pollock|starfield}} Run the “marquee” screensaver with a specific text and font: gh screensaver --saver {{marquee}} -- --message="{{message}}" --font={{font_name}} Run the “starfield” screensaver with a specific density and speed: gh screensaver --saver {{starfield}} -- --density {{500}} --speed {{10}} List available screensavers: gh screensaver --list
gh secret Manage GitHub secrets. More information: https://cli.github.com/manual/gh_secret. List secret keys for the current repository: gh secret list List secret keys for a specific organization: gh secret list --org {{organization}} List secret keys for a specific repository: gh secret list --repo {{owner}}/{{repository}} Set a secret for the current repository (user will be prompted for the value): gh secret set {{name}} Set a secret from a file for the current repository: gh secret set {{name}} < {{path/to/file}}
gh secret set Create or update GitHub secrets. More information: https://cli.github.com/manual/gh_secret_set. Set a secret for the current repository (user will be prompted for the value): gh secret set {{name}} Set a secret from a file for the current repository: gh secret set {{name}} < {{path/to/file}} Set a secret for a specific repository: gh secret set {{name}} --body {{value}} --repo {{owner}}/{{repository}} Set an organization secret for specific repositories: gh secret set {{name}} --org {{organization}} --repos "{{repository1,repository2,.
gh ssh-key Manage GitHub SSH keys. More information: https://cli.github.com/manual/gh_ssh-key. Display help: gh ssh-key List SSH keys for the currently authenticated user: gh ssh-key list Add an SSH key to the currently authenticated user’s account: gh ssh-key add {{path/to/key.pub}} Add an SSH key to the currently authenticated user’s account with a specific title: gh ssh-key add --title {{title}} {{path/to/key.pub}}
gh workflow List, view, and run GitHub Actions workflows. More information: https://cli.github.com/manual/gh_workflow. Interactively select a workflow to view the latest jobs for: gh workflow view View a specific workflow in the default browser: gh workflow view {{id|workflow_name|filename.yml}} --web Display the YAML definition of a specific workflow: gh workflow view {{id|workflow_name|filename.yml}} --yaml Display the YAML definition for a specific Git branch or tag: gh workflow view {{id|workflow_name|filename.yml}} --ref {{branch|tag_name}} --yaml List workflow files (use --all to include disabled workflows): gh workflow list
ghc The Glasgow Haskell Compiler. Compiles and links Haskell source files. More information: https://www.haskell.org/ghc. Find and compile all modules in the current directory: ghc Main Compile a single file: ghc {{file.hs}} Compile using extra optimization: ghc -O {{file.hs}} Stop compilation after generating object files (.o): ghc -c {{file.hs}} Start a REPL (interactive shell): ghci Evaluate a single expression: ghc -e {{expression}}
ghci The Glasgow Haskell Compiler’s interactive environment. More information: https://downloads.haskell.org/ghc/latest/docs/html/users_guide/ghci.html. Start a REPL (interactive shell): ghci Start a REPL and load the specified Haskell source file: ghci {{source_file.hs}} Start a REPL and enable a language option: ghci -X{{language_option}} Start a REPL and enable some level of compiler warnings (e.g. all or compact): ghci -W{{warning_level}} Start a REPL with a colon-separated list of directories for finding source files: ghci -i{{path/to/directory1}}:{{path/to/directory2}}
ghcup Haskell toolchain installer. Install, manage, and update Haskell toolchains. More information: https://gitlab.haskell.org/haskell/ghcup-hs. Start the interactive TUI: ghcup tui List available GHC/cabal versions: ghcup list Install the recommended GHC version: ghcup install ghc Install a specific GHC version: ghcup install ghc {{version}} Set the currently “active” GHC version: ghcup set ghc {{version}} Install cabal-install: ghcup install cabal Update ghcup itself: ghcup upgrade
ghdl Open-source simulator for the VHDL language. More information: http://ghdl.free.fr. Analyze a VHDL source file and produce an object file: ghdl -a {{filename.vhdl}} Elaborate a design (where {{design}} is the name of a configuration unit, entity unit or architecture unit): ghdl -e {{design}} Run an elaborated design: ghdl -r {{design}} Run an elaborated design and dump output to a waveform file: ghdl -r {{design}} --wave={{output.ghw}} Check the syntax of a VHDL source file: ghdl -s {{filename.
ghost A blogging platform and headless CMS. More information: https://ghost.org. Install Ghost in the current directory: ghost install Start an instance of Ghost: ghost start Restart the Ghost instance: ghost restart Check the system for any potential hiccups while installing or updating Ghost: ghost doctor View the logs of a Ghost instance: ghost log {{name}} Run a Ghost instance directly (used by process managers and for debugging): ghost run View running Ghost processes: ghost ls
gibo Fetch gitignore boilerplates. More information: https://github.com/simonwhitaker/gibo. List available boilerplates: gibo list Write a boilerplate to stdout: gibo dump {{boilerplate}} Write a boilerplate to .gitignore: gibo dump {{boilerplate}} >>{{.gitignore}} Search for boilerplates containing a given string: gibo search {{string}} Update available local boilerplates: gibo update
gifdiff Compare two GIFs for identical visual appearance. See also: gifsicle. More information: https://www.lcdf.org/gifsicle. Check how GIFs differ: gifdiff {{path/to/first.gif}} {{path/to/second.gif}} Check if GIFs differ: gifdiff --brief {{path/to/first.gif}} {{path/to/second.gif}}
gifsicle GIF manipulator. More information: https://www.lcdf.org/gifsicle. Optimize a GIF as a new file: gifsicle {{path/to/input.gif}} --optimize=3 -o {{path/to/output.gif}} Unoptimize a GIF in place: gifsicle -b {{path/to/input.gif}} --unoptimize Extract a frame from a GIF: gifsicle {{path/to/input.gif}} '#{{0}}' > {{path/to/firstframe.gif}} Make a GIF animation from selected GIFs: gifsicle {{*.gif}} --delay={{10}} --loop > {{path/to/output.gif}} Reduce file size using lossy compression: gifsicle -b {{path/to/input.gif}} --optimize=3 --lossy={{100}} --colors={{16}} --dither Delete the first 10 frames and all frames after frame 20 from a GIF: gifsicle -b {{path/to/input.
gimp GNU image manipulation program. See also: krita. More information: https://docs.gimp.org/en/gimp-fire-up.html#gimp-concepts-running-command-line. Start GIMP: gimp Open specific files: gimp {{path/to/image1 path/to/image2 ...}} Open specific files in a new window: gimp --new-instance {{path/to/image1 path/to/image2 ...}} Start without a splash screen: gimp --no-splash Print errors and warnings to the console instead of showing them in a dialog box: gimp --console-messages Enable debugging signal handlers: gimp --debug-handlers
gist Upload code to https://gist.github.com. More information: https://github.com/defunkt/gist. Log in in gist on this computer: gist --login Create a gist from any number of text files: gist {{file.txt}} {{file2.txt}} Create a private gist with a description: gist --private --description "{{A meaningful description}}" {{file.txt}} Read contents from stdin and create a gist from it: {{echo "hello world"}} | gist List your public and private gists: gist --list List all public gists for any user: gist --list {{username}}
git Distributed version control system. Some subcommands such as commit, add, branch, checkout, push, etc. have their own usage documentation. More information: https://git-scm.com/. Check the Git version: git --version Show general help: git --help Show help on a Git subcommand (like clone, add, push, log, etc.): git help {{subcommand}} Execute a Git subcommand: git {{subcommand}} Execute a Git subcommand on a custom repository root path: git -C {{path/to/repo}} {{subcommand}} Execute a Git subcommand with a given configuration set: git -c '{{config.
git abort Abort an ongoing rebase, merge, or cherry-pick. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-abort. Abort a Git rebase, merge, or cherry-pick: git abort
git add Adds changed files to the index. More information: https://git-scm.com/docs/git-add. Add a file to the index: git add {{path/to/file}} Add all files (tracked and untracked): git add -A Only add already tracked files: git add -u Also add ignored files: git add -f Interactively stage parts of files: git add -p Interactively stage parts of a given file: git add -p {{path/to/file}} Interactively stage a file: git add -i
git alias Create shortcuts for Git commands. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-alias. List all aliases: git alias Create a new alias: git alias "{{name}}" "{{command}}" Search for an existing alias: git alias ^{{name}}
git am Apply patch files and create a commit. Useful when receiving commits via email. See also git format-patch, which can generate patch files. More information: https://git-scm.com/docs/git-am. Apply and commit changes following a local patch file: git am {{path/to/file.patch}} Apply and commit changes following a remote patch file: curl -L {{https://example.com/file.patch}} | git apply Abort the process of applying a patch file: git am --abort Apply as much of a patch file as possible, saving failed hunks to reject files: git am --reject {{path/to/file.
git annex Manage files with Git, without checking their contents in. When a file is annexed, its content is moved into a key-value store, and a symlink is made that points to the content. More information: https://git-annex.branchable.com. Initialize a repo with Git annex: git annex init Add a file: git annex add {{path/to/file_or_directory}} Show the current status of a file or directory: git annex status {{path/to/file_or_directory}} Synchronize a local repository with a remote: git annex {{remote}}
git annotate Show commit hash and last author on each line of a file. See git blame, which is preferred over git annotate. git annotate is provided for those familiar with other version control systems. More information: https://git-scm.com/docs/git-annotate. Print a file with the author name and commit hash prepended to each line: git annotate {{path/to/file}} Print a file with the author email and commit hash prepended to each line: git annotate -e {{path/to/file}}
git apply Apply a patch to files and/or to the index without creating a commit. See also git am, which applies a patch and also creates a commit. More information: https://git-scm.com/docs/git-apply. Print messages about the patched files: git apply --verbose {{path/to/file}} Apply and add the patched files to the index: git apply --index {{path/to/file}} Apply a remote patch file: curl -L {{https://example.com/file.patch}} | git apply Output diffstat for the input and apply the patch: git apply --stat --apply {{path/to/file}}
git archive Create an archive of files from a named tree. More information: https://git-scm.com/docs/git-archive. Create a tar archive from the contents of the current HEAD and print it to stdout: git archive --verbose HEAD Create a zip archive from the current HEAD and print it to stdout: git archive --verbose --format=zip HEAD Same as above, but write the zip archive to file: git archive --verbose --output={{path/to/file.zip}} HEAD Create a tar archive from the contents of the latest commit on a specific branch: git archive --output={{path/to/file.
git archive-file Export all the files of the current Git branch into a zip archive. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-archive-file. Pack the currently checked out commit into a zip archive: git archive-file
git authors Generate a list of committers of a Git repository. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-authors. Print a full list of committers to stdout instead of to the AUTHORS file: git authors --list Append the list of committers to the AUTHORS file and open it in the default editor: git authors Append the list of committers, excluding emails, to the AUTHORS file and open it in the default editor: git authors --no-email
git bisect Use binary search to find the commit that introduced a bug. Git automatically jumps back and forth in the commit graph to progressively narrow down the faulty commit. More information: https://git-scm.com/docs/git-bisect. Start a bisect session on a commit range bounded by a known buggy commit, and a known clean (typically older) one: git bisect start {{bad_commit}} {{good_commit}} For each commit that git bisect selects, mark it as “bad” or “good” after testing it for the issue: git bisect {{good|bad}}
git blame Show commit hash and last author on each line of a file. More information: https://git-scm.com/docs/git-blame. Print file with author name and commit hash on each line: git blame {{path/to/file}} Print file with author email and commit hash on each line: git blame -e {{path/to/file}} Print file with author name and commit hash on each line at a specific commit: git blame {{commit}} {{path/to/file}} Print file with author name and commit hash on each line before a specific commit: git blame {{commit}}~ {{path/to/file}}
git blame-someone-else Blame someone else for your bad code. More information: https://github.com/jayphelps/git-blame-someone-else. Change the committer and author of a commit: git blame-someone-else "{{author <someone@example.com>}}" {{commit}}
git branch Main Git command for working with branches. More information: https://git-scm.com/docs/git-branch. List all branches (local and remote; the current branch is highlighted by *): git branch --all List which branches include a specific Git commit in their history: git branch --all --contains {{commit_hash}} Show the name of the current branch: git branch --show-current Create new branch based on the current commit: git branch {{branch_name}} Create new branch based on a specific commit: git branch {{branch_name}} {{commit_hash}}
git browse View an upstream repository in the default browser. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-browse. Open the first upstream in the default browser: git browse Open a specific upstream in the default browser: git browse {{upstream}}
git browse-ci Open the current git repository’s CI website in the default web browser. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-browse-ci. Open the current repository’s CI configuration on its upstream website: git browse-ci Open the current repository’s CI configuration on its upstream website for a specific remote: git browse-ci {{remote}}
git brv Print a list of branches, sorted by last commit date. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-brv. List each branch showing date, latest commit hash and message: git brv
git bug A distributed bug tracker that uses git’s internal storage, so no files are added in your project. You may submit your problems to the same git remote you use to interact with others, much like commits and branches. More information: https://github.com/MichaelMure/git-bug/blob/master/doc/md/git-bug.md. Create a new identity: git bug user create Create a new bug: git bug add You can push your new entry to a remote: git bug push
git bugreport Captures debug information from the system and user, generating a text file to aid in the reporting of a bug in Git. More information: https://git-scm.com/docs/git-bugreport. Create a new bug report file in the current directory: git bugreport Create a new bug report file in the specified directory, creating it if it does not exist: git bugreport --output-directory {{path/to/directory}} Create a new bug report file with the specified filename suffix in strftime format: git bugreport --suffix {%m%d%y}
git bulk Execute operations on multiple Git repositories. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-bulk. Register the current directory as a workspace: git bulk --addcurrent {{workspace_name}} Register a workspace for bulk operations: git bulk --addworkspace {{workspace_name}} {{/absolute/path/to/repository}} Clone a repository inside a specific directory then register the repository as a workspace: git bulk --addworkspace {{workspace_name}} {{/absolute/path/to/parent_directory}} --from {{remote_repository_location}} Clone repositories from a newline-separated list of remote locations then register them as workspaces: git bulk --addworkspace {{workspace-name}} {{absolute/path/to/root/directory}} --from {{absolute/path/to/file}}
git bundle Package objects and references into an archive. More information: https://git-scm.com/docs/git-bundle. Create a bundle file that contains all objects and references of a specific branch: git bundle create {{path/to/file.bundle}} {{branch_name}} Create a bundle file of all branches: git bundle create {{path/to/file.bundle}} --all Create a bundle file of the last 5 commits of the current branch: git bundle create {{path/to/file.bundle}} -{{5}} {{HEAD}} Create a bundle file of the latest 7 days: git bundle create {{path/to/file.
git cat-file Provide content or type and size information for Git repository objects. More information: https://git-scm.com/docs/git-cat-file. Get the [s]ize of the HEAD commit in bytes: git cat-file -s HEAD Get the [t]ype (blob, tree, commit, tag) of a given Git object: git cat-file -t {{8c442dc3}} Pretty-[p]rint the contents of a given Git object based on its type: git cat-file -p {{HEAD~2}}
git changelog Generate a changelog report from repository commits and tags. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-changelog. Update existing file or create a new History.md file with the commit messages since the latest Git tag: git changelog List commits from the current version: git changelog --list List a range of commits from the tag named 2.1.0 to now: git changelog --list --start-tag {{2.1.0}} List pretty formatted range of commits between the tag 0.
git check-attr For every pathname, list if each attribute is unspecified, set, or unset as a gitattribute on that pathname. More information: https://git-scm.com/docs/git-check-attr. Check the values of all attributes on a file: git check-attr --all {{path/to/file}} Check the value of a specific attribute on a file: git check-attr {{attribute}} {{path/to/file}} Check the value of a specific attribute on files: git check-attr --all {{path/to/file1}} {{path/to/file2}} Check the value of a specific attribute on one or more files: git check-attr {{attribute}} {{path/to/file1}} {{path/to/file2}}
git check-ignore Analyze and debug Git ignore/exclude (".gitignore") files. More information: https://git-scm.com/docs/git-check-ignore. Check whether a file or directory is ignored: git check-ignore {{path/to/file_or_directory}} Check whether multiple files or directories are ignored: git check-ignore {{path/to/file}} {{path/to/directory}} Use pathnames, one per line, from stdin: git check-ignore --stdin < {{path/to/file_list}} Do not check the index (used to debug why paths were tracked and not ignored): git check-ignore --no-index {{path/to/files_or_directories}} Include details about the matching pattern for each path: git check-ignore --verbose {{path/to/files_or_directories}}
git check-mailmap Show canonical names and email addresses of contacts. More information: https://git-scm.com/docs/git-check-mailmap. Look up the canonical name associated with an email address: git check-mailmap "<{{email@example.com}}>"
git check-ref-format Checks if a given refname is acceptable, and exits with a non-zero status if it is not. More information: https://git-scm.com/docs/git-check-ref-format. Check the format of the specified refname: git check-ref-format {{refs/head/refname}} Print the name of the last branch checked out: git check-ref-format --branch @{-1} Normalize a refname: git check-ref-format --normalize {{refs/head/refname}}
git checkout Checkout a branch or paths to the working tree. More information: https://git-scm.com/docs/git-checkout. Create and switch to a new branch: git checkout -b {{branch_name}} Create and switch to a new branch based on a specific reference (branch, remote/branch, tag are examples of valid references): git checkout -b {{branch_name}} {{reference}} Switch to an existing local branch: git checkout {{branch_name}} Switch to the previously checked out branch: git checkout - Switch to an existing remote branch: git checkout --track {{remote_name}}/{{branch_name}}
git checkout-index Copy files from the index to the working tree. More information: https://git-scm.com/docs/git-checkout-index. Restore any files deleted since the last commit: git checkout-index --all Restore any files deleted or changed since the last commit: git checkout-index --all --force Restore any files changed since the last commit, ignoring any files that were deleted: git checkout-index --all --force --no-create Export a copy of the entire tree at the last commit to the specified directory (the trailing slash is important): git checkout-index --all --force --prefix={{path/to/export_directory/}}
git cherry Find commits that have yet to be applied upstream. More information: https://git-scm.com/docs/git-cherry. Show commits (and their messages) with equivalent commits upstream: git cherry -v Specify a different upstream and topic branch: git cherry {{origin}} {{topic}} Limit commits to those within a given limit: git cherry {{origin}} {{topic}} {{base}}
git cherry-pick Apply the changes introduced by existing commits to the current branch. To apply changes to another branch, first use git checkout to switch to the desired branch. More information: https://git-scm.com/docs/git-cherry-pick. Apply a commit to the current branch: git cherry-pick {{commit}} Apply a range of commits to the current branch (see also git rebase --onto): git cherry-pick {{start_commit}}~..{{end_commit}} Apply multiple (non-sequential) commits to the current branch: git cherry-pick {{commit_1}} {{commit_2}}
git clean Remove untracked files from the working tree. More information: https://git-scm.com/docs/git-clean. Delete files that are not tracked by Git: git clean Interactively delete files that are not tracked by Git: git clean -i Show what files would be deleted without actually deleting them: git clean --dry-run Forcefully delete files that are not tracked by Git: git clean -f Forcefully delete directories that are not tracked by Git: git clean -fd
git clear Clear a Git working directory as if it was freshly cloned with the current branch including files in .gitignore. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-clear. Reset all tracked files and delete all untracked files even if they are included in the .gitignore: git clear
git clear-soft Clear a Git working directory as if it was freshly cloned with the current branch excluding files in .gitignore. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-clear-soft. Reset all tracked files and delete all untracked files: git clear-soft
git clone Clone an existing repository. More information: https://git-scm.com/docs/git-clone. Clone an existing repository into a new directory (the default directory is the repository name): git clone {{remote_repository_location}} {{path/to/directory}} Clone an existing repository and its submodules: git clone --recursive {{remote_repository_location}} Clone only the .git directory of an existing repository: git clone --no-checkout {{remote_repository_location}} Clone a local repository: git clone --local {{path/to/local/repository}} Clone quietly: git clone --quiet {{remote_repository_location}} Clone an existing repository only fetching the 10 most recent commits on the default branch (useful to save time): git clone --depth {{10}} {{remote_repository_location}}
git coauthor Add another author to the latest commit. Since this command rewrites the Git history, --force will be needed when pushing next time. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-coauthor. Insert an additional author to the last Git commit: git coauthor {{name}} {{name@example.com}}
git cola A powerful Git GUI with a slick and intuitive user interface. More information: https://git-cola.readthedocs.io. Start git cola: git cola Start git cola in amend mode: git cola --amend Prompt for a Git repository. Defaults to the current directory: git cola --prompt Open the Git repository at mentioned path: git cola --repo {{path/to/git-repository}} Apply the path filter to the status widget: git cola --status-filter {{filter}}
git column Display data in columns. More information: https://git-scm.com/docs/git-column. Format stdin as multiple columns: ls | git column --mode={{column}} Format stdin as multiple columns with a maximum width of 100: ls | git column --mode=column --width={{100}} Format stdin as multiple columns with a maximum padding of 30: ls | git column --mode=column --padding={{30}}
git commit Commit files to the repository. More information: https://git-scm.com/docs/git-commit. Commit staged files to the repository with a message: git commit --message "{{message}}" Commit staged files with a message read from a file: git commit --file {{path/to/commit_message_file}} Auto stage all modified and deleted files and commit with a message: git commit --all --message "{{message}}" Commit staged files and sign them with the specified GPG key (or the one defined in the config file if no argument is specified): git commit --gpg-sign {{key_id}} --message "{{message}}"
git commit-graph Write and verify Git commit-graph files. More information: https://git-scm.com/docs/git-commit-graph. Write a commit-graph file for the packed commits in the repository’s local .git directory: git commit-graph write Write a commit-graph file containing all reachable commits: git show-ref --hash | git commit-graph write --stdin-commits Write a commit-graph file containing all commits in the current commit-graph file along with those reachable from HEAD: git rev-parse {{HEAD}} | git commit-graph write --stdin-commits --append
git commit-tree Low level utility to create commit objects. See also: git commit. More information: https://git-scm.com/docs/git-commit-tree. Create a commit object with the specified message: git commit-tree {{tree}} -m "{{message}}" Create a commit object reading the message from a file (use - for stdin): git commit-tree {{tree}} -F {{path/to/file}} Create a GPG-signed commit object: git commit-tree {{tree}} -m "{{message}}" --gpg-sign Create a commit object with the specified parent commit object: git commit-tree {{tree}} -m "{{message}}" -p {{parent_commit_sha}}
git commits-since Display commits since a specific time or date. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-commits-since. Display commits since yesterday: git commits-since {{yesterday}} Display commits since last week: git commits-since {{last week}} Display commits since last month: git commits-since {{last month}} Display commits since yesterday 2pm: git commits-since {{yesterday 2pm}}
git config Manage custom configuration options for Git repositories. These configurations can be local (for the current repository) or global (for the current user). More information: https://git-scm.com/docs/git-config. List only local configuration entries (stored in .git/config in the current repository): git config --list --local List only global configuration entries (stored in ~/.gitconfig by default or in $XDG_CONFIG_HOME/git/config if such a file exists): git config --list --global List only system configuration entries (stored in /etc/gitconfig), and show their file location: git config --list --system --show-origin
git contrib Display commits from a specific author. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-contrib. Display all commit hashes and their corresponding commit messages from a specific author: git contrib {{author}}
git count Print the total number of commits. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-count. Print the total number of commits: git count Print the number of commits per contributor and the total number of commits: git count --all
git count-objects Count the number of unpacked objects and their disk consumption. More information: https://git-scm.com/docs/git-count-objects. Count all objects and display the total disk usage: git count-objects Display a count of all objects and their total disk usage, displaying sizes in human-readable units: git count-objects --human-readable Display more verbose information: git count-objects --verbose Display more verbose information, displaying sizes in human-readable units: git count-objects --human-readable --verbose
git cp Copy an existing file to a new location, preserving history. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-cp. Copy an existing file in a Git repo, staying in the same directory: git cp {{file}} {{new_file}} Copy an existing file in a Git repo and place it elsewhere: git cp {{path/to/file}} {{path/to/new_file}}
git create-branch Create a Git branch in a repository. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-create-branch. Create a local branch: git create-branch {{branch_name}} Create a branch locally and on origin: git create-branch --remote {{branch_name}} Create a branch locally and on upstream (through forks): git create-branch --remote upstream {{branch_name}}
git credential Retrieve and store user credentials. More information: https://git-scm.com/docs/git-credential. Display credential information, retrieving the username and password from configuration files: echo "{{url=http://example.com}}" | git credential fill Send credential information to all configured credential helpers to store for later use: echo "{{url=http://example.com}}" | git credential approve Erase the specified credential information from all the configured credential helpers: echo "{{url=http://example.com}}" | git credential reject
git credential-cache Git helper to temporarily store passwords in memory. More information: https://git-scm.com/docs/git-credential-cache. Store Git credentials for a specific amount of time: git config credential.helper 'cache --timeout={{time_in_seconds}}'
git credential-store git helper to store passwords on disk. More information: https://git-scm.com/docs/git-credential-store. Store Git credentials in a specific file: git config credential.helper 'store --file={{path/to/file}}'
git cvsexportcommit Export a single Git commit to a CVS checkout. More information: https://git-scm.com/docs/git-cvsexportcommit. Merge a specific patch into CVS: git cvsexportcommit -v -c -w {{path/to/project_cvs_checkout}} {{commit_sha1}}
git daemon A really simple server for Git repositories. More information: https://git-scm.com/docs/git-daemon. Launch a Git daemon with a whitelisted set of directories: git daemon --export-all {{path/to/directory1}} {{path/to/directory2}} Launch a Git daemon with a specific base directory and allow pulling from all sub-directories that look like Git repositories: git daemon --base-path={{path/to/directory}} --export-all --reuseaddr Launch a Git daemon for the specified directory, verbosely printing log messages and allowing Git clients to write to it: git daemon {{path/to/directory}} --enable=receive-pack --informative-errors --verbose
git delete-branch Delete local and remote Git branches. Part of git-extras. If deleting the checked out branch, only the remote branch will be deleted. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-delete-branch. Delete a local and remote Git branch: git delete-branch {{branch_name}} Delete multiple local and remote Git branches: git delete-branch {{branch_name1 branch_name2 ...}}
git delete-merged-branches Delete branches that are listed in git branch --merged excluding master. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-delete-merged-branches. Delete merged branches: git delete-merged-branches
git delete-submodule Delete a specific submodule from a git repository. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-delete-submodule. Delete a specific submodule: git delete-submodule {{path/to/submodule}}
git delete-tag Delete existing local and remote tags. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-delete-tag. Delete a tag: git delete-tag {{tag_version}}
git delta List files that differ from another branch. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-delta. List files from the current checked out branch that differ from the main branch: git delta {{main}} List files from a specific branch that differ from another specific branch: git delta {{branch_1}} {{branch_2}}
git describe Give an object a human-readable name based on an available ref. More information: https://git-scm.com/docs/git-describe. Create a unique name for the current commit (the name contains the most recent annotated tag, the number of additional commits, and the abbreviated commit hash): git describe Create a name with 4 digits for the abbreviated commit hash: git describe --abbrev={{4}} Generate a name with the tag reference path: git describe --all Describe a Git tag: git describe {{v1.
git diff Show changes to tracked files. More information: https://git-scm.com/docs/git-diff. Show unstaged, uncommitted changes: git diff Show all uncommitted changes (including staged ones): git diff HEAD Show only staged (added, but not yet committed) changes: git diff --staged Show changes from all commits since a given date/time (a date expression, e.g. “1 week 2 days” or an ISO date): git diff 'HEAD@{3 months|weeks|days|hours|seconds ago}' Show only names of changed files since a given commit: git diff --name-only {{commit}}
git diff-files Compare files using their sha1 hashes and modes. More information: https://git-scm.com/docs/git-diff-files. Compare all changed files: git diff-files Compare only specified files: git diff-files {{path/to/file}} Show only the names of changed files: git diff-files --name-only Output a summary of extended header information: git diff-files --summary
git difftool Show file changes using external diff tools. Accepts the same options and arguments as git diff. See also: git diff. More information: https://git-scm.com/docs/git-difftool. List available diff tools: git difftool --tool-help Set the default diff tool to meld: git config --global diff.tool "{{meld}}" Use the default diff tool to show staged changes: git difftool --staged Use a specific tool (opendiff) to show changes since a given commit: git difftool --tool={{opendiff}} {{commit}}
git effort Display how much activity a file has had, showing commits per file and “active days” i.e. total number of days that contributed to the file. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-effort. Display each file in the repository, showing commits and active days: git effort Display files modified by a specific number of commits or more, showing commits and active days: git effort --above {{5}} Display files modified by a specific author, showing commits and active days: git effort -- --author="{{username}}"
git extras Git extension pack. More information: https://github.com/tj/git-extras. Install or upgrade git-extras commands: git extras update Display help and subcommands: git extras --help Print the version of installed git-extras: git extras --version
git fame Pretty-print Git repository contributions. More information: https://github.com/casperdcl/git-fame. Calculate contributions for the current Git repository: git fame Exclude files/directories that match the specified regular expression: git fame --excl "{{regular_expression}}" Calculate contributions made after the specified date: git fame --since "{{3 weeks ago|2021-05-13}}" Display contributions in the specified format: git fame --format {{pipe|yaml|json|csv|tsv}} Display contributions per file extension: git fame --bytype Ignore whitespace changes: git fame --ignore-whitespace Detect inter-file line moves and copies: git fame -C
git feature Create or merge feature branches. Feature branches obey the format feature/. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-feature. Create and switch to a new feature branch: git feature {{feature_branch}} Merge a feature branch into the current branch creating a merge commit: git feature finish {{feature_branch}} Merge a feature branch into the current branch squashing the changes into one commit: git feature finish --squash {{feature_branch}} Send changes from a specific feature branch to its remote counterpart: git feature {{feature_branch}} --remote {{remote_name}}
git fetch Download objects and refs from a remote repository. More information: https://git-scm.com/docs/git-fetch. Fetch the latest changes from the default remote upstream repository (if set): git fetch Fetch new branches from a specific remote upstream repository: git fetch {{remote_name}} Fetch the latest changes from all remote upstream repositories: git fetch --all Also fetch tags from the remote upstream repository: git fetch --tags Delete local references to remote branches that have been deleted upstream: git fetch --prune
git filter-repo A versatile tool for rewriting Git history. See also: bfg. More information: https://github.com/newren/git-filter-repo. Replace a sensitive string in all files: git filter-repo --replace-text <(echo '{{find}}==>{{replacement}}') Extract a single folder, keeping history: git filter-repo --path {{path/to/folder}} Remove a single folder, keeping history: git filter-repo --path {{path/to/folder}} --invert-paths Move everything from sub-folder one level up: git filter-repo --path-rename {{path/to/folder/:}}
git flow A collection of Git extensions to provide high-level repository operations. More information: https://github.com/nvie/gitflow. Initialize it inside an existing Git repository: git flow init Start developing on a feature branch based on develop: git flow feature start {{feature}} Finish development on a feature branch, merging it into the develop branch and deleting it: git flow feature finish {{feature}} Publish a feature to the remote server: git flow feature publish {{feature}}
git for-each-repo Run a Git command on a list of repositories. Note: this command is experimental and may change. More information: https://git-scm.com/docs/git-for-each-repo. Run maintenance on each of a list of repositories stored in the maintenance.repo user configuration variable: git for-each-repo --config={{maintenance.repo}} {{maintenance run}} Run git pull on each repository listed in a global configuration variable: git for-each-repo --config={{global_configuration_variable}} {{pull}}
git force-clone Provides the basic functionality of git clone, but if the destination git repository already exists it will force-reset it to resemble a clone of the remote. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-force-clone. Clone a Git repository into a new directory: git force-clone {{remote_repository_location}} {{path/to/directory}} Clone a Git repository into a new directory, checking out an specific branch: git force-clone -b {{branch_name}} {{remote_repository_location}} {{path/to/directory}} Clone a Git repository into an existing directory of a Git repository, performing a force-reset to resemble it to the remote and checking out an specific branch: git force-clone -b {{branch_name}} {{remote_repository_location}} {{path/to/directory}}
git fork Fork the given GitHub repo. Like git clone but forks first. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-fork. Fork and clone a GitHub repository by its URL: git fork {{https://github.com/tldr-pages/tldr}} Fork and clone a GitHub repository by its slug: git fork {{tldr-pages/tldr}}
git format-patch Prepare .patch files. Useful when emailing commits elsewhere. See also git am, which can apply generated .patch files. More information: https://git-scm.com/docs/git-format-patch. Create an auto-named .patch file for all the unpushed commits: git format-patch {{origin}} Write a .patch file for all the commits between 2 revisions to stdout: git format-patch {{revision_1}}..{{revision_2}} Write a .patch file for the 3 latest commits: git format-patch -{{3}}
git fsck Verify the validity and connectivity of nodes in a Git repository index. Does not make any modifications. See git gc for cleaning up dangling blobs. More information: https://git-scm.com/docs/git-fsck. Check the current repository: git fsck List all tags found: git fsck --tags List all root nodes found: git fsck --root
git gc Optimise the local repository by cleaning unnecessary files. More information: https://git-scm.com/docs/git-gc. Optimise the repository: git gc Aggressively optimise, takes more time: git gc --aggressive Do not prune loose objects (prunes by default): git gc --no-prune Suppress all output: git gc --quiet View full usage: git gc --help
git gh-pages Create a new branch inside the current repository called gh-pages. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-gh-pages. Create the GitHub pages branch inside the repository in the current directory: git gh-pages
git graft Merge commits from a specific branch into another branch and delete the source branch. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-graft. Merge all commits not present on the target branch from the source branch to target branch, and delete the source branch: git graft {{source_branch}} {{target_branch}}
git-grep Find strings inside files anywhere in a repository’s history. Accepts a lot of the same flags as regular grep. More information: https://git-scm.com/docs/git-grep. Search for a string in tracked files: git grep {{search_string}} Search for a string in files matching a pattern in tracked files: git grep {{search_string}} -- {{file_glob_pattern}} Search for a string in tracked files, including submodules: git grep --recurse-submodules {{search_string}} Search for a string at a specific point in history: git grep {{search_string}} {{HEAD~2}}
git hash-object Computes the unique hash key of content and optionally creates an object with specified type. More information: https://git-scm.com/docs/git-hash-object. Compute the object ID without storing it: git hash-object {{path/to/file}} Compute the object ID and store it in the Git database: git hash-object -w {{path/to/file}} Compute the object ID specifying the object type: git hash-object -t {{blob|commit|tag|tree}} {{path/to/file}} Compute the object ID from stdin: cat {{path/to/file}} | git hash-object --stdin
git help Display help information about Git. More information: https://git-scm.com/docs/git-help. Display help about a specific Git subcommand: git help {{subcommand}} Display help about a specific Git subcommand in a web browser: git help --web {{subcommand}} Display a list of all available Git subcommands: git help --all List the available guides: git help --guide List all possible configuration variables: git help --config
git ignore Show/update .gitignore files. Part of git-extras. See also git ignore-io. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-ignore. Show the content of all global and local .gitignore files: git ignore Ignore file(s) privately, updating .git/info/exclude file: git ignore {{file_pattern}} --private Ignore file(s) locally, updating local .gitignore file: git ignore {{file_pattern}} Ignore file(s) globally, updating global .gitignore file: git ignore {{file_pattern}} --global
git ignore-io Generate .gitignore files from predefined templates. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-ignore-io. List available templates: git ignore-io list Generate a .gitignore template: git ignore-io {{item_a,item_b,item_n}}
git-imerge Perform a merge or rebase between two Git branches incrementally. Conflicts between branches are tracked down to pairs of individual commits, to simplify conflict resolution. More information: https://github.com/mhagger/git-imerge. Start imerge-based rebase (checkout the branch to be rebased, first): git imerge rebase {{branch_to_rebase_onto}} Start imerge-based merge (checkout the branch to merge into, first): git imerge merge {{branch_to_be_merged}} Show ASCII diagram of in-progress merge or rebase: git imerge diagram Continue imerge operation after resolving conflicts (git add the conflicted files, first): git imerge continue --no-edit
git info Display Git repository information. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-info. Display remote locations, remote and local branches, most recent commit data and .git/config settings: git info Display remote locations, remote and local branches and most recent commit data: git info --no-config
git init Initializes a new local Git repository. More information: https://git-scm.com/docs/git-init. Initialize a new local repository: git init Initialize a repository with the specified name for the initial branch: git init --initial-branch={{branch_name}} Initialize a repository using SHA256 for object hashes (requires Git version 2.29+): git init --object-format={{sha256}} Initialize a barebones repository, suitable for use as a remote over ssh: git init --bare
git instaweb Helper to launch a GitWeb server. More information: https://git-scm.com/docs/git-instaweb. Launch a GitWeb server for the current Git repository: git instaweb --start Listen only on localhost: git instaweb --start --local Listen on a specific port: git instaweb --start --port {{1234}} Use a specified HTTP daemon: git instaweb --start --httpd {{lighttpd|apache2|mongoose|plackup|webrick}} Also auto-launch a web browser: git instaweb --start --browser Stop the currently running GitWeb server: git instaweb --stop Restart the currently running GitWeb server: git instaweb --restart
git lfs Work with large files in Git repositories. More information: https://git-lfs.github.com. Initialize Git LFS: git lfs install Track files that match a glob: git lfs track '{{*.bin}}' Change the Git LFS endpoint URL (useful if the LFS server is separate from the Git server): git config -f .lfsconfig lfs.url {{lfs_endpoint_url}} List tracked patterns: git lfs track List tracked files that have been committed: git lfs ls-files Push all Git LFS objects to the remote server (useful if errors are encountered): git lfs push --all {{remote_name}} {{branch_name}}
git local-commits Show local commits that haven’t been pushed to origin. Any additional arguments will be passed directly to git log. Part of `git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-local-commits. Show commits that haven’t been pushed: git local-commits
git lock Lock a file in a Git repository from being modified by a commit. Part of git-extras. See also git-unlock. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-lock. Disable the ability to commit changes of a local file: git lock {{path/to/file}}
git locked List locked files in a Git repository. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-locked. List all local locked files: git locked
git log Show a history of commits. More information: https://git-scm.com/docs/git-log. Show the sequence of commits starting from the current one, in reverse chronological order of the Git repository in the current working directory: git log Show the history of a particular file or directory, including differences: git log -p {{path/to/file_or_directory}} Show an overview of which file(s) changed in each commit: git log --stat Show a graph of commits in the current branch using only the first line of each commit message: git log --oneline --graph
git ls-files Show information about files in the index and the working tree. More information: https://git-scm.com/docs/git-ls-files. Show deleted files: git ls-files --deleted Show modified and deleted files: git ls-files --modified Show ignored and untracked files: git ls-files --others Show untracked files, not ignored: git ls-files --others --exclude-standard
git ls-remote Git command for listing references in a remote repository based on name or URL. If no name or URL are given, then the configured upstream branch will be used, or remote origin if the former is not configured. More information: https://git-scm.com/docs/git-ls-remote. Show all references in the default remote repository: git ls-remote Show only heads references in the default remote repository: git ls-remote --heads Show only tags references in the default remote repository: git ls-remote --tags
git ls-tree List the contents of a tree object. More information: https://git-scm.com/docs/git-ls-tree. List the contents of the tree on a branch: git ls-tree {{branch_name}} List the contents of the tree on a commit, recursing into subtrees: git ls-tree -r {{commit_hash}} List only the filenames of the tree on a commit: git ls-tree --name-only {{commit_hash}}
git mailinfo Extract patch and authorship information from a single email message. More information: https://git-scm.com/docs/git-mailinfo. Extract the patch and author data from an email message: git mailinfo {{message|patch}} Extract but remove leading and trailing whitespace: git mailinfo -k {{message|patch}} Remove everything from the body before a scissors line (e.g. “–>* –”) and retrieve the message or patch: git mailinfo --scissors {{message|patch}}
git-maintenance Run tasks to optimize Git repository data. More information: https://git-scm.com/docs/git-maintenance. Register the current repository in the user’s list of repositories to daily have maintenance run: git maintenance register Start running maintenance on the current repository: git maintenance start Halt the background maintenance schedule for the current repository: git maintenance stop Remove the current repository from the user’s maintenance repository list: git maintenance unregister Run a specific maintenance task on the current repository: git maintenance run --task={{commit-graph|gc|incremental-repack|loose-objects|pack-refs|prefetch}}
git merge Merge branches. More information: https://git-scm.com/docs/git-merge. Merge a branch into your current branch: git merge {{branch_name}} Edit the merge message: git merge --edit {{branch_name}} Merge a branch and create a merge commit: git merge --no-ff {{branch_name}} Abort a merge in case of conflicts: git merge --abort Merge using a specific strategy: git merge --strategy {{strategy}} --strategy-option {{strategy_option}} {{branch_name}}
git merge-base Find a common ancestor of two commits. More information: https://git-scm.com/docs/git-merge-base. Print the best common ancestor of two commits: git merge-base {{commit_1}} {{commit_2}} Output all best common ancestors of two commits: git merge-base --all {{commit_1}} {{commit_2}} Check if a commit is an ancestor of a specific commit: git merge-base --is-ancestor {{ancestor_commit}} {{commit}}
git merge-into Merge one branch into another branch. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-merge-into. Merge a source branch into a specific destination branch: git merge-into {{source_branch}} {{destination_branch}} Merge current branch into a specific destination branch: git merge-into {{destination_branch}}
git merge-repo Merge two repository histories. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-merge-repo. Merge a repository’s branch into the current repository’s directory: git merge-repo {{path/to/repo}} {{branch_name}} {{path/to/directory}} Merge a remote repository’s branch into the current repository’s directory, not preserving history: git merge-repo {{path/to/remote_repo}} {{branch_name}} .
git mergetool Run merge conflict resolution tools to resolve merge conflicts. More information: https://git-scm.com/docs/git-mergetool. Launch the default merge tool to resolve conflicts: git mergetool List valid merge tools: git mergetool --tool-help Launch the merge tool identified by a name: git mergetool --tool {{tool_name}} Don’t prompt before each invocation of the merge tool: git mergetool --no-prompt Explicitly use the GUI merge tool (see the merge.guitool config variable): git mergetool --gui Explicitly use the regular merge tool (see the merge.
git missing Show commits which aren’t shared between two branches. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-missing. Show commits which aren’t shared between the currently checked-out branch and another branch: git missing {{branch}} Show commits which aren’t shared between two branches: git missing {{branch_1}} {{branch_2}}
git mr Check out GitLab merge requests locally. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-mr. Check out a specific merge request: git mr {{mr_number}} Check out a merge request from a specific remote: git mr {{mr_number}} {{remote}} Checkout a merge request from its URL: git mr {{url}} Clean up old merge request branches: git mr clean
git mv Move or rename files and update the Git index. More information: https://git-scm.com/docs/git-mv. Move a file inside the repo and add the movement to the next commit: git mv {{path/to/file}} {{new/path/to/file}} Rename a file or directory and add the renaming to the next commit: git mv {{path/to/file_or_directory}} {{path/to/destination}} Overwrite the file or directory in the target path if it exists: git mv --force {{path/to/file_or_directory}} {{path/to/destination}}
git notes Add or inspect object notes. More information: https://git-scm.com/docs/git-notes. List all notes and the objects they are attached to: git notes list List all notes attached to a given object (defaults to HEAD): git notes list [{{object}}] Show the notes attached to a given object (defaults to HEAD): git notes show [{{object}}] Append a note to a specified object (opens the default text editor): git notes append {{object}} Append a note to a specified object, specifying the message: git notes append --message="{{message_text}}"
git obliterate Delete specific files and erase their history from a Git repository. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-obliterate. Erase the existence of specific files: git obliterate {{file_1 file_2 ...}} Erase the existence of specific files between 2 commits: git obliterate {{file_1 file_2 ...}} -- {{commit_hash_1}}..{{commit_hash_2}}
git pr Check out GitHub pull requests locally. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-pr. Check out a specific pull request: git pr {{pr_number}} Check out a pull request from a specific remote: git pr {{pr_number}} {{remote}} Check out a pull request from its URL: git pr {{url}} Clean up old pull request branches: git pr clean
git prune Git command for pruning all unreachable objects from the object database. This command is often not used directly but as an internal command that is used by Git gc. More information: https://git-scm.com/docs/git-prune. Report what would be removed by Git prune without removing it: git prune --dry-run Prune unreachable objects and display what has been pruned to stdout: git prune --verbose Prune unreachable objects while showing progress: git prune --progress
git pull Fetch branch from a remote repository and merge it to local repository. More information: https://git-scm.com/docs/git-pull. Download changes from default remote repository and merge it: git pull Download changes from default remote repository and use fast-forward: git pull --rebase Download changes from given remote repository and branch, then merge them into HEAD: git pull {{remote_name}} {{branch}}
git push Push commits to a remote repository. More information: https://git-scm.com/docs/git-push. Send local changes in the current branch to its default remote counterpart: git push Send changes from a specific local branch to its remote counterpart: git push {{remote_name}} {{local_branch}} Send changes from a specific local branch to its remote counterpart, and set the remote one as the default push/pull target of the local one: git push -u {{remote_name}} {{local_branch}}
git range-diff Compare two commit ranges (e.g. two versions of a branch). More information: https://git-scm.com/docs/git-range-diff. Diff the changes of two individual commits: git range-diff {{commit_1}}^! {{commit_2}}^! Diff the changes of ours and theirs from their common ancestor, e.g. after an interactive rebase: git range-diff {{theirs}}...{{ours}} Diff the changes of two commit ranges, e.g. to check whether conflicts have been resolved appropriately when rebasing commits from base1 to base2: git range-diff {{base1}}.
git reauthor Change details about an author identity. Since this command rewrites the Git history, --force will be needed when pushing next time. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-reauthor. Change an author’s email and name across the whole Git repository: git reauthor --old-email {{old@example.com}} --correct-email {{new@example.com}} --correct-name "{{name}}" Change the email and name to the ones defined in the Git config: git reauthor --old-email {{old@example.com}} --use-config Change the email and name of all commits, regardless of their original author: git reauthor --all --correct-email {{name@example.
git rebase Reapply commits from one branch on top of another branch. Commonly used to “move” an entire branch to another base, creating copies of the commits in the new location. More information: https://git-scm.com/docs/git-rebase. Rebase the current branch on top of another specified branch: git rebase {{new_base_branch}} Start an interactive rebase, which allows the commits to be reordered, omitted, combined or modified: git rebase -i {{target_base_branch_or_commit_hash}} Continue a rebase that was interrupted by a merge failure, after editing conflicting files: git rebase --continue
git reflog Show a log of changes to local references like HEAD, branches or tags. More information: https://git-scm.com/docs/git-reflog. Show the reflog for HEAD: git reflog Show the reflog for a given branch: git reflog {{branch_name}} Show only the 5 latest entries in the reflog: git reflog -n {{5}}
git release Create a Git tag for a release. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-release. Create and push a release: git release {{tag_name}} Create and push a signed release: git release {{tag_name}} -s Create and push a release with a message: git release {{{tag_name}}} -m "{{message}}"
git remote Manage set of tracked repositories (“remotes”). More information: https://git-scm.com/docs/git-remote. Show a list of existing remotes, their names and URL: git remote -v Show information about a remote: git remote show {{remote_name}} Add a remote: git remote add {{remote_name}} {{remote_url}} Change the URL of a remote (use --add to keep the existing URL): git remote set-url {{remote_name}} {{new_url}} Show the URL of a remote: git remote get-url {{remote_name}} Remove a remote: git remote remove {{remote_name}}
git rename-branch Rename a Git branch. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-rename-branch. Rename the branch you are currently on: git rename-branch {{new_branch_name}} Rename a specific branch: git rename-branch {{old_branch_name}} {{new_branch_name}}
git rename-remote Change remote for pulling and pushing. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-rename-remote. Change the upstream remote to origin: git rename-remote {{upstream}} {{origin}}
git rename-tag Rename a Git tag. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-rename-tag. Rename an existing Git tag locally and remotely: git rename-tag {{old_tag_name}} {{new_tag_name}}
git repack Pack unpacked objects in a Git repository. More information: https://git-scm.com/docs/git-repack. Pack unpacked objects in the current directory: git repack Also remove redundant objects after packing: git repack -d
git repl Git REPL (read-evaluate-print-loop) - an interactive Git shell. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-repl. Start an interactive Git shell: git repl Run a Git command while in the interactive Git shell: {{git_subcommand}} {{command_arguments}} Run an external (non-Git) command while in the interactive Git shell: !{{command}} {{command_arguments}} Exit the interactive Git shell (or press Ctrl + D): exit
git replace Create, list, and delete refs to replace objects. More information: https://git-scm.com/docs/git-replace. Replace any commit with a different one, leaving other commits unchanged: git replace {{object}} {{replacement}} Delete existing replace refs for the given objects: git replace --delete {{object}} Edit an object’s content interactively: git replace --edit {{object}}
git request-pull Generate a request asking the upstream project to pull changes into its tree. More information: https://git-scm.com/docs/git-request-pull. Produce a request summarizing the changes between the v1.1 release and a specified branch: git request-pull {{v1.1}} {{https://example.com/project}} {{branch_name}} Produce a request summarizing the changes between the v0.1 release on the foo branch and the local bar branch: git request-pull {{v0.1}} {{https://example.com/project}} {{foo:bar}}
git reset Undo commits or unstage changes, by resetting the current Git HEAD to the specified state. If a path is passed, it works as “unstage”; if a commit hash or branch is passed, it works as “uncommit”. More information: https://git-scm.com/docs/git-reset. Unstage everything: git reset Unstage specific file(s): git reset {{path/to/file1 path/to/file2 ...}} Interactively unstage portions of a file: git reset --patch {{path/to/file}} Undo the last commit, keeping its changes (and any further uncommitted changes) in the filesystem: git reset HEAD~
git reset-file Revert a file to HEAD or a specific commit. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-reset-file. Reset a file to HEAD: git reset-file {{path/to/file}} Reset a file to a specific commit: git reset-file {{path/to/file}} {{commit_hash}}
git restore Restore working tree files. Requires Git version 2.23+. See also git checkout and git reset. More information: https://git-scm.com/docs/git-restore. Restore an unstaged file to the version of the current commit (HEAD): git restore {{path/to/file}} Restore an unstaged file to the version of a specific commit: git restore --source {{commit}} {{path/to/file}} Discard all unstaged changes to tracked files: git restore :/ Unstage a file: git restore --staged {{path/to/file}} Unstage all files: git restore --staged :/
git rev-list List revisions (commits) in reverse chronological order. More information: https://git-scm.com/docs/git-rev-list. List all commits on the current branch: git rev-list {{HEAD}} Print the latest commit that changed (add/edit/remove) a specific file on the current branch: git rev-list -n 1 HEAD -- {{path/to/file}} List commits more recent than a specific date, on a specific branch: git rev-list --since={{'2019-12-01 00:00:00'}} {{branch_name}} List all merge commits on a specific commit: git rev-list --merges {{commit}}
git rev-parse Display metadata related to specific revisions. More information: https://git-scm.com/docs/git-rev-parse. Get the commit hash of a branch: git rev-parse {{branch_name}} Get the current branch name: git rev-parse --abbrev-ref {{HEAD}} Get the absolute path to the root directory: git rev-parse --show-toplevel
git revert Create new commits which reverse the effect of earlier ones. More information: https://git-scm.com/docs/git-revert. Revert the most recent commit: git revert {{HEAD}} Revert the 5th last commit: git revert HEAD~{{4}} Revert a specific commit: git revert {{0c01a9}} Revert multiple commits: git revert {{branch_name~5..branch_name~2}} Don’t create new commits, just change the working tree: git revert -n {{0c01a9..9a1743}}
git rm Remove files from repository index and local filesystem. More information: https://git-scm.com/docs/git-rm. Remove file from repository index and filesystem: git rm {{path/to/file}} Remove directory: git rm -r {{path/to/directory}} Remove file from repository index but keep it untouched locally: git rm --cached {{path/to/file}}
git root Print the root directory of the current Git repository. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-root. Print the absolute path of the current Git repository: git root Print the current working directory relative to the root of the current Git repository: git root --relative
git scp Copy files from the current working tree to the working directory of a remote repository. Part of git-extras. Uses rsync to transfer files. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-scp. Copy unstaged files to a specific remote: git scp {{remote_name}} Copy staged and unstaged files to a remote: git scp {{remote_name}} HEAD Copy files that has been changed in the last commit and any staged or unstaged files to a remote: git scp {{remote_name}} HEAD~1
git secret Bash tool which stores private data inside a Git repository. More information: https://github.com/sobolevn/git-secret. Initialize git-secret in a local repository: git secret init Grant access to the current Git user’s email: git secret tell -m Grant access by email: git secret tell {{email}} Revoke access by email: git secret killperson {{email}} List emails with access to secrets: git secret whoknows Register a secret file: git secret add {{path/to/file}} Encrypt secrets: git secret hide
git sed Replace patterns in git-controlled files using sed. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-sed. Replace the specified text in the current repository: git sed '{{find_text}}' '{{replace_text}}' Replace the specified text and then commit the resulting changes with a standard commit message: git sed -c '{{find_text}}' '{{replace_text}}' Replace the specified text, using regular expressions: git sed -f g '{{find_text}}' '{{replace_text}}' Replace a specific text in all files under a given directory: git sed '{{find_text}}' '{{replace_text}}' -- {{path/to/directory}}
git send-email Send a collection of patches as emails. Patches can be specified as files, directions, or a revision list. More information: https://git-scm.com/docs/git-send-email. Send the last commit in the current branch: git send-email -1 Send a given commit: git send-email -1 {{commit}} Send multiple (e.g. 10) commits in the current branch: git send-email {{-10}} Send an introductory email message for the patch series: git send-email -{{number_of_commits}} --compose Review and edit the email message for each patch you’re about to send: git send-email -{{number_of_commits}} --annotate
git setup Create a Git repository in a specific directory and commit all files. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-setup. Create a Git repository in the current directory and commit all files: git setup Create a Git repository in a specific directory and commit all files: git setup {{path/to/directory}}
git shortlog Summarizes the git log output. More information: https://git-scm.com/docs/git-shortlog. View a summary of all the commits made, grouped alphabetically by author name: git shortlog View a summary of all the commits made, sorted by the number of commits made: git shortlog -n View a summary of all the commits made, grouped by the committer identities (name and email): git shortlog -c View a summary of the last 5 commits (i.
git show Show various types of Git objects (commits, tags, etc.). More information: https://git-scm.com/docs/git-show. Show information about the latest commit (hash, message, changes, and other metadata): git show Show information about a given commit: git show {{commit}} Show information about the commit associated with a given tag: git show {{tag}} Show information about the 3rd commit from the HEAD of a branch: git show {{branch}}~{{3}} Show a commit’s message in a single line, suppressing the diff output: git show --oneline -s {{commit}}
git show-branch Show branches and their commits. More information: https://git-scm.com/docs/git-show-branch. Show a summary of the latest commit on a branch: git show-branch {{branch_name|ref|commit}} Compare commits in the history of multiple commits or branches: git show-branch {{branch_name|ref|commit}} Compare all remote tracking branches: git show-branch --remotes Compare both local and remote tracking branches: git show-branch --all List the latest commits in all branches: git show-branch --all --list Compare a given branch with the current branch: git show-branch --current {{commit|branch_name|ref}}
git show-index Show the packed archive index of a Git repository. More information: https://git-scm.com/docs/git-show-index. Read an IDX file for a Git packfile and dump its contents to stdout: git show-index {{path/to/file.idx}} Specify the hash algorithm for the index file (experimental): git show-index --object-format={{sha1|sha256}} {{path/to/file}}
git show-merged-branches Print all branches which are merged into the current head. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-show-merged-branches. Print all branches which are merged into the current head: git show-merged-branches
git show-ref Git command for listing references. More information: https://git-scm.com/docs/git-show-ref. Show all refs in the repository: git show-ref Show only heads references: git show-ref --heads Show only tags references: git show-ref --tags Verify that a given reference exists: git show-ref --verify {{path/to/ref}}
git show-tree Show a decorated tree graph with all branches of a Git repository, showing annotations. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-show-tree. Show a decorated tree graph for all branches annotated with tags and branch names: git show-tree
git show-unmerged-branches Print all branches which are not merged into the current HEAD. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-show-unmerged-branches. Print all branches which are not merged into the current HEAD: git show-unmerged-branches
git sizer Computes various Git repository size metrics and alerts you to any that might cause problems or inconvenience. More information: https://github.com/github/git-sizer. Report only statistics that have a level of concern greater than 0: git sizer Report all statistics: git sizer -v See additional options: git sizer -h
git squash Squash multiple commits into a single commit. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-squash. Merge all commits from a specific branch into the current branch as a single commit: git squash {{source_branch}} Squash all commits starting with a specific commit on the current branch: git squash {{commit}} Squash the n latest commits and commit with a message: git squash HEAD~{{n}} "{{message}}" Squash the n latest commits and commit concatenating all individual messages: git squash --squash-msg HEAD~{{n}}
git stage Add file contents to the staging area. Synonym of git add. More information: https://git-scm.com/docs/git-stage. Add a file to the index: git stage {{path/to/file}} Add all files (tracked and untracked): git stage -A Only add already tracked files: git stage -u Also add ignored files: git stage -f Interactively stage parts of files: git stage -p Interactively stage parts of a given file: git stage -p {{path/to/file}} Interactively stage a file: git stage -i
git stamp Stamp the last commit message, with the possibility to reference the issues numbers from your bug tracker or link to its review page. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-stamp. Stamp the last commit message referencing it with the issue number from your bug tracker: git stamp {{issue_number}} Stamp the last commit message linking it to its review page: git stamp {{Review https://example.org/path/to/review}} Stamp the last commit message replacing previous issues with a new one: git stamp --replace {{issue_number}}
git standup See commits from a specified user. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-standup. Show a given author’s commits from the last 10 days: git standup -a {{name|email}} -d {{10}} Show a given author’s commits from the last 10 days and whether they are GPG signed: git standup -a {[name|email}} -d {{10}} -g Show all the commits from all contributors for the last 10 days: git standup -a all -d {{10}}
git stash Stash local Git changes in a temporary area. More information: https://git-scm.com/docs/git-stash. Stash current changes, except new (untracked) files: git stash push -m {{optional_stash_message}} Stash current changes, including new (untracked) files: git stash -u Interactively select parts of changed files for stashing: git stash -p List all stashes (shows stash name, related branch and message): git stash list Show the changes as a patch between the stash (default is stash@{0}) and the commit back when stash entry was first created: git stash show -p {{stash@{0}}}
git status Show the changes to files in a Git repository. Lists changed, added and deleted files compared to the currently checked-out commit. More information: https://git-scm.com/docs/git-status. Show changed files which are not yet added for commit: git status Give output in [s]hort format: git status -s Don’t show untracked files in the output: git status --untracked-files=no Show output in [s]hort format along with [b]ranch info: git status -sb
git stripspace Read text (e.g. commit messages, notes, tags, and branch descriptions) from stdin and clean it into the manner used by Git. More information: https://git-scm.com/docs/git-stripspace. Trim whitespace from a file: cat {{path/to/file}} | git stripspace Trim whitespace and Git comments from a file: cat {{path/to/file}} | git stripspace --strip-comments Convert all lines in a file into Git comments: git stripspace --comment-lines < {{path/to/file}}
git submodule Inspects, updates and manages submodules. More information: https://git-scm.com/docs/git-submodule. Install a repository’s specified submodules: git submodule update --init --recursive Add a Git repository as a submodule: git submodule add {{repository_url}} Add a Git repository as a submodule at the specified directory: git submodule add {{repository_url}} {{path/to/directory}} Update every submodule to its latest commit: git submodule foreach git pull
git subtree Tool to manage project dependencies as subprojects. More information: https://manpages.debian.org/testing/git-man/git-subtree.1.en.html. Add a Git repository as a subtree: git subtree add --prefix={{path/to/directory/}} --squash {{repository_url}} {{branch_name}} Update subtree repository to its latest commit: git subtree pull --prefix={{path/to/directory/}} {{repository_url}} {{branch_name}} Merge recent changes up to the latest subtree commit into the subtree: git subtree merge --prefix={{path/to/directory/}} --squash {{repository_url}} {{branch_name}} Push commits to a subtree repository: git subtree push --prefix={{path/to/directory/}} {{repository_url}} {{branch_name}}
git summary Display information about a Git repository. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-summary. Display data about a Git repository: git summary Display data about a Git repository since a commit-ish: git summary {{commit|branch_name|tag_name}} Display data about a Git repository, merging committers using different emails into 1 statistic for each author: git summary --dedup-by-email Display data about a Git repository, showing the number of lines modified by each contributor: git summary --line
git svn Bidirectional operation between a Subversion repository and Git. More information: https://git-scm.com/docs/git-svn. Clone an SVN repository: git svn clone {{https://example.com/subversion_repo}} {{local_dir}} Clone an SVN repository starting at a given revision number: git svn clone -r{{1234}}:HEAD {{https://svn.example.net/subversion/repo}} {{local_dir}} Update local clone from the remote SVN repository: git svn rebase Fetch updates from the remote SVN repository without changing the Git HEAD: git svn fetch Commit back to the SVN repository: git svn dcommit
git switch Switch between Git branches. Requires Git version 2.23+. See also git checkout. More information: https://git-scm.com/docs/git-switch. Switch to an existing branch: git switch {{branch_name}} Create a new branch and switch to it: git switch --create {{branch_name}} Create a new branch based on an existing commit and switch to it: git switch --create {{branch_name}} {{commit}} Switch to the previous branch: git switch - Switch to a branch and update all submodules to match: git switch --recurse-submodules {{branch_name}}
git symbolic-ref Read, change, or delete files that store references. More information: https://git-scm.com/docs/git-symbolic-ref. Store a reference by a name: git symbolic-ref refs/{{name}} {{ref}} Store a reference by name, including a message with a reason for the update: git symbolic-ref -m "{{message}}" refs/{{name}} refs/heads/{{branch_name}} Read a reference by name: git symbolic-ref refs/{{name}} Delete a reference by name: git symbolic-ref --delete refs/{{name}} For scripting, hide errors with --quiet and use --short to simplify (“refs/heads/X” prints as “X”): git symbolic-ref --quiet --short refs/{{name}}
git sync Sync local branches with remote branches. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-sync. Sync the current local branch with its remote branch: git sync Sync the current local branch with the remote main branch: git sync origin main Sync without cleaning untracked files: git sync -s {{remote_name}} {{branch_name}}
git tag Create, list, delete or verify tags. A tag is a static reference to a specific commit. More information: https://git-scm.com/docs/git-tag. List all tags: git tag Create a tag with the given name pointing to the current commit: git tag {{tag_name}} Create a tag with the given name pointing to a given commit: git tag {{tag_name}} {{commit}} Create an annotated tag with the given message: git tag {{tag_name}} -m {{tag_message}}
git touch Create new files and add them to the index. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-touch. Create new files and add them to the index: git touch {{path/to/file1 path/to/file2 ...}}
git undo Undo recent commits. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-undo. Remove the most recent commit: git undo Remove a specific number of the most recent commits: git undo {{3}}
git unlock Unlock a file in a Git repository so it can be modified by a commit. Part of git-extras. See also git lock. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-unlock. Enable the ability to commit changes of a previously-locked local file: git unlock {{path/to/file}}
git unpack-file Create a temporary file with a blob’s contents. More information: https://git-scm.com/docs/git-unpack-file. Create a file holding the contents of the blob specified by its ID then print the name of the temporary file: git unpack-file {{blob_id}}
git update-index Git command for manipulating the index. More information: https://git-scm.com/docs/git-update-index. Pretend that a modified file is unchanged (git status will not show this as changed): git update-index --skip-worktree {{path/to/modified_file}}
git update-ref Git command for creating, updating, and deleting Git refs. More information: https://git-scm.com/docs/git-update-ref. Delete a ref, useful for soft resetting the first commit: git update-ref -d {{HEAD}} Update ref with a message: git update-ref -m {{message}} {{HEAD}} {{4e95e05}}
git utimes Change files modification time to their last commit date. Does not touch files that are in the working tree or index. Part of git-extras. More information: https://github.com/tj/git-extras/blob/master/Commands.md#git-utimes. Change all files modification time to their last commit date: git utimes Change files modification time that are newer than their last commit date, preserving original modification time of files that were committed from the local repository: git utimes --newer
git var Prints a Git logical variable’s value. See git config, which is preferred over git var. More information: https://git-scm.com/docs/git-var. Print the value of a Git logical variable: git var {{GIT_AUTHOR_IDENT|GIT_COMMITTER_IDENT|GIT_EDITOR|GIT_PAGER}} [l]ist all Git logical variables: git var -l
git verify-commit Check for GPG verification of commits. If no commits are verified, nothing will be printed, regardless of options specified. More information: https://git-scm.com/docs/git-verify-commit. Check commits for a GPG signature: git verify-commit {{commit_hash1 optional_commit_hash2 ...}} Check commits for a GPG signature and show details of each commit: git verify-commit {{commit_hash1 optional_commit_hash2 ...}} --verbose Check commits for a GPG signature and print the raw details: git verify-commit {{commit_hash1 optional_commit_hash2 ...}} --raw
git verify-tag Check for GPG verification of tags. If a tag wasn’t signed, an error will occur. More information: https://git-scm.com/docs/git-verify-tag. Check tags for a GPG signature: git verify-tag {{tag1 optional_tag2 ...}} Check tags for a GPG signature and show details for each tag: git verify-tag {{tag1 optional_tag2 ...}} --verbose Check tags for a GPG signature and print the raw details: git verify-tag {{tag1 optional_tag2 ...}} --raw
git whatchanged Show what has changed with recent commits or files. See also git log. More information: https://git-scm.com/docs/git-whatchanged. Display logs and changes for recent commits: git whatchanged Display logs and changes for recent commits within the specified time frame: git whatchanged --since="{{2 hours ago}}" Display logs and changes for recent commits for specific files or directories: git whatchanged {{path/to/file_or_directory}}
git worktree Manage multiple working trees attached to the same repository. More information: https://git-scm.com/docs/git-worktree. Create a new directory with the specified branch checked out into it: git worktree add {{path/to/directory}} {{branch}} Create a new directory with a new branch checked out into it: git worktree add {{path/to/directory}} -b {{new_branch}} List all the working directories attached to this repository: git worktree list Remove a worktree (after deleting worktree directory): git worktree prune
github-label-sync A command-line interface for synchronizing GitHub labels. More information: https://github.com/Financial-Times/github-label-sync. Synchronize labels using a local labels.json file: github-label-sync --access-token {{token}} {{repository_name}} Synchronize labels using a specific labels JSON file: github-label-sync --access-token {{token}} --labels {{url|path/to/json_file}} {{repository_name}} Perform a dry run instead of actually synchronizing labels: github-label-sync --access-token {{token}} --dry-run {{repository_name}} Keep labels that aren’t in labels.json: github-label-sync --access-token {{token}} --allow-added-labels {{repository_name}} Synchronize using the GITHUB_ACCESS_TOKEN environment variable: github-label-sync {{repository_name}}
gitk A graphical Git repository browser. More information: https://git-scm.com/docs/gitk. Show the repository browser for the current Git repository: gitk Show repository browser for a specific file or directory: gitk {{path/to/file_or_directory}} Show commits made since 1 week ago: gitk --since="{{1 week ago}}" Show commits older than 1/1/2016: gitk --until="{{1/1/2015}}" Show at most 100 changes in all branches: gitk --max-count={{100}} --all
gitlab Ruby wrapper for the GitLab API. Some subcommands such as gitlab ctl have their own usage documentation. More information: https://narkoz.github.io/gitlab/. Create a new project: gitlab create_project {{project_name}} Get info about a specific commit: gitlab commit {{project_name}} {{commit_hash}} Get info about jobs in a CI pipeline: gitlab pipeline_jobs {{project_name}} {{pipeline_id}} Start a specific CI job: gitlab job_play {{project_name}} {{job_id}}
gitlab-ctl Manage the GitLab omnibus. More information: https://docs.gitlab.com/omnibus/maintenance/. Display the status of every service: sudo gitlab-ctl status Display the status of a specific service: sudo gitlab-ctl status {{nginx}} Restart every service: sudo gitlab-ctl restart Restart a specific service: sudo gitlab-ctl restart {{nginx}} Display the logs of every service and keep reading until Ctrl + C is pressed: sudo gitlab-ctl tail Display the logs of a specific service: sudo gitlab-ctl tail {{nginx}}
gitlab-runner Manage GitLab runners. More information: https://docs.gitlab.com/runner/. Register a runner: sudo gitlab-runner register --url {{https://gitlab.example.com}} --registration-token {{token}} --name {{name}} Register a runner with a Docker executor: sudo gitlab-runner register --url {{https://gitlab.example.com}} --registration-token {{token}} --name {{name}} --executor {{docker}} Unregister a runner: sudo gitlab-runner unregister --name {{name}} Display the status of the runner service: sudo gitlab-runner status Restart the runner service: sudo gitlab-runner restart Check if the registered runners can connect to GitLab: sudo gitlab-runner verify
gitlint Git commit message linter checks your commit messages for style. More information: https://jorisroovers.com/gitlint/. Check the last commit message: gitlint The range of commits to lint: gitlint --commits {{single_refspec_argument}} Path to a directory or Python module with extra user-defined rules: gitlint --extra-path {{path/to/directory}} Start a specific CI job: gitlint --target {{path/to/target_directory}} Path to a file containing a commit-msg: gitlint --msg-filename {{path/to/filename}} Read staged commit meta-info from the local repository: gitlint --staged
gitmoji An interactive command-line tool for using emojis on commits. More information: https://github.com/carloscuesta/gitmoji-cli. Start the commit wizard: gitmoji --commit Initialize the git hook (so gitmoji will be run every time git commit is run): gitmoji --init Remove the git hook: gitmoji --remove List all available emojis and their descriptions: gitmoji --list Search emoji list for a list of keywords: gitmoji --search {{keyword1}} {{keyword2}} Update cached list of emojis from main repository: gitmoji --update
gitsome A terminal-based interface for GitHub, accessed via the gh command. It also provides menu-style autocomplete suggestions for git commands. More information: https://github.com/donnemartin/gitsome. Enter the gitsome shell (optional), to enable autocompletion and interactive help for Git (and gh) commands: gitsome Setup GitHub integration with the current account: gh configure List notifications for the current account (as would be seen in https://github.com/notifications): gh notifications List the current account’s starred repos, filtered by a given search string: gh starred "{{python 3}}"
gitwatch Automatically commit file or directory changes to a git repository. More information: https://github.com/gitwatch/gitwatch. Automatically commit any changes made to a file or directory: gitwatch {{path/to/file_or_directory}} Automatically commit changes and push them to a remote repository: gitwatch -r {{remote_name}} {{path/to/file_or_directory}} Automatically commit changes and push them to a specific branch of a remote repository: gitwatch -r {{remote_name}} -b {{branch_name}} {{path/to/file_or_directory}}
gixy Analyze nginx configuration files. More information: https://github.com/yandex/gixy. Analyze nginx configuration (default path: /etc/nginx/nginx.conf): gixy Analyze nginx configuration but skip specific tests: gixy --skips {{http_splitting}} Analyze nginx configuration with the specific severity level: gixy {{-l|-ll|-lll}} Analyze nginx configuration files on the specific path: gixy {{path/to/configuration_file_1}} {{path/to/configuration_file_2}}
glab Work seamlessly with GitLab. Some subcommands such as glab config have their own usage documentation. More information: https://github.com/profclems/glab. Clone a GitLab repository locally: glab repo clone {{owner}}/{{repository}} Create a new issue: glab issue create View and filter the open issues of the current repository: glab issue list View an issue in the default browser: glab issue view --web {{issue_number}} Create a merge request: glab mr create View a pull request in the default web browser: glab mr view --web {{pr_number}}
glab alias Manage GitLab CLI command aliases. More information: https://glab.readthedocs.io/en/latest/alias. Display the subcommand help: glab alias List all the aliases glab is configured to use: glab alias list Create a glab subcommand alias: glab alias set {{mrv}} '{{mr view}}' Set a shell command as a glab subcommand: glab alias set --shell {{alias_name}} {{command}} Delete a command shortcut: glab alias delete {{alias_name}}
glab auth Authenticate with a GitLab host. More information: https://glab.readthedocs.io/en/latest/auth. Log in with interactive prompt: glab auth login Log in with a token: glab auth login --token {{token}} Check authentication status: glab auth status Log in to a specific GitLab instance: glab auth login --hostname {{gitlab.example.com}}
glab issue Manage GitLab issues. More information: https://glab.readthedocs.io/en/latest/issue. Display a specific issue: glab issue view {{issue_number}} Display a specific issue in the default web browser: glab issue view {{issue_number}} --web Create a new issue in the default web browser: glab issue create --web List the last 10 issues with the bug label: glab issue list --per-page {{10}} --label "{{bug}}" List closed issues made by a specific user: glab issue list --closed --author {{username}}
glab mr Manage GitLab merge requests. Some subcommands such as glab mr create have their own usage documentation. More information: https://glab.readthedocs.io/en/latest/mr. Create a merge request: glab mr create Check out a specific merge request locally: glab mr checkout {{mr_number}} View the changes made in the merge request: glab mr diff Approve the merge request for the current branch: glab mr approve Merge the merge request associated with the current branch interactively: glab mr merge
glab mr create Manage GitLab merge requests. More information: https://glab.readthedocs.io/en/latest/mr/create.html. Interactively create a merge request: glab mr create Create a merge request, determining the title and description from the commit messages of the current branch: glab mr create --fill Create a draft merge request: glab mr create --draft Create a merge request specifying the target branch, title, and description: glab mr create --target-branch {{target_branch}} --title "{{title}}" --description "{{description}}" Start opening a merge request in the default web browser: glab mr create --web
glab mr merge Merge GitLab merge requests. More information: https://glab.readthedocs.io/en/latest/mr/merge.html. Merge the merge request associated with the current branch interactively: glab mr merge Merge the specified merge request, interactively: glab mr merge {{mr_number}} Merge the merge request, removing the branch on both the local and the remote: glab mr merge --remove-source-branch Squash the current merge request into one commit with the message body and merge: glab mr merge --squash --message="{{commit_message_body}}"
glab pipeline List, view, and run GitLab CI/CD pipelines. More information: https://glab.readthedocs.io/en/latest/pipeline. View a running pipeline on the current branch: glab pipeline status View a running pipeline on a specific branch: glab pipeline status --branch {{branch_name}} Get the list of pipelines: glab pipeline list Run a manual pipeline on the current branch: glab pipeline run Run a manual pipeline on a specific branch: glab pipeline run --branch {{branch_name}}
glab release Manage GitLab releases. More information: https://glab.readthedocs.io/en/latest/release. List releases in a Gitlab repository, limited to 30 items: glab release list Display information about a specific release: glab release view {{tag}} Create a new release: glab release create {{tag}} Delete a specific release: glab release delete {{tag}} Download assets from a specific release: glab release download {{tag}} Upload assets to a specific release: glab release upload {{tag}} {{path/to/file1}} {{path/to/file2}}
glab repo Work with GitLab repositories. More information: https://glab.readthedocs.io/en/latest/repo/index.html#synopsis. Create a new repository (if the repository name is not set, the default name will be the name of the current directory): glab repo create {{name}} Clone a repository: glab repo clone {{owner}}/{{repository}} Fork and clone a repository: glab repo fork {{owner}}/{{repository}} --clone View a repository in the default web browser: glab repo view {{owner}}/{{repository}} --web Search some repositories in the GitLab instance: glab repo search -s {{search_string}}
glances A cross-platform system monitoring tool. More information: https://nicolargo.github.io/glances/. Run in terminal: glances Run in web server mode to show results in browser: glances -w Run in server mode to allow connections from other Glances clients: glances -s Connect to a Glances server: glances -c {{hostname}} Require a password in (web) server mode: glances -s --password
glib-compile-resources Compiles resource files (e.g. images) into a binary resource bundle. These may be linked into GTK applications using the GResource API. More information: https://manned.org/glib-compile-resources. Compile resources referenced in file.gresource.xml to a .gresource binary: glib-compile-resources {{file.gresource.xml}} Compile resources referenced in file.gresource.xml to a C source file: glib-compile-resources --generate-source {{file.gresource.xml}} Compile resources in file.gresource.xml to a chosen target file, with .c, .h or .gresource extension: glib-compile-resources --generate --target={{file.ext}} {{file.gresource.xml}} Print a list of resource files referenced in file.
glow Render Markdown in the terminal. More information: https://github.com/charmbracelet/glow. Run glow and select a file to view: glow Render a Markdown file to the terminal: glow {{path/to/file}} View a Markdown file using a paginator: glow -p {{path/to/file}} View a file from a URL: glow {{https://example.com/file.md}} View a GitHub/GitLab README: glow {{github.com/owner/repository}}
gml2gv Convert a graph from gml to gv format. Converters: gml2gv, gv2gml, gv2gxl, gxl2gv, graphml2gv & mm2gv. More information: https://graphviz.org/pdf/gml2gv.1.pdf. Convert a graph from gml to gv format: gml2gv -o {{output.gv}} {{input.gml}} Convert a graph using stdin and stdout: cat {{input.gml}} | gml2gv > {{output.gv}} Display help: gml2gv -?
gmssl GmSSL is a crypto toolkit supporting SM1, SM2, SM3, SM4, SM9, and ZUC/ZUC256. More information: http://gmssl.org/english.html. Generate an SM3 hash for a file: gmssl sm3 {{path/to/file}} Encrypt a file using the SM4 cipher: gmssl sms4 -e -in {{path/to/file}} -out {{path/to/file.sms4}} Decrypt a file using the SM4 cipher: gmssl sms4 -d -in {{path/to/file.sms4}} Generate an SM2 private key: gmssl sm2 -genkey -out {{path/to/file.pem}} Generate an SM2 public key from an existing private key: gmssl sm2 -pubout -in {{path/to/file.
gnatmake A low-level build tool for Ada programs (part of the GNAT toolchain). More information: https://gcc.gnu.org/onlinedocs/gnat_ugn/Building-with-gnatmake.html. Compile an executable: gnatmake {{source_file1.adb source_file2.adb ...}} Set a custom executable name: gnatmake -o {{executable_name}} {{source_file.adb}} [f]orce recompilation: gnatmake -f {{source_file.adb}}
gnatprep Preprocessor for Ada source code files (part of the GNAT toolchain). More information: https://gcc.gnu.org/onlinedocs/gnat_ugn/Preprocessing-with-gnatprep.html. Use symbol definitions from a file: gnatprep {{source_file}} {{target_file}} {{definitions_file}} Specify symbol values in the command-line: gnatprep -D{{name}}={{value}} {{source_file}} {{target_file}}
gnmic A gNMI command-line client. Manage gNMI network device configuration and view operational data. More information: https://gnmic.kmrd.dev. Request device capabilities: gnmic --address {{ip:port}} capabilities Provide a username and password to fetch device capabilities: gnmic --address {{ip:port}} --username {{username}} --password {{password}} capabilities Get a snapshot of the device state at a specific path: gnmic -a {{ip:port}} get --path {{path}} Update device state at a specific path: gnmic -a {{ip:port}} set --update-path {{path}} --update-value {{value}}
gnmic get Get a snapshot of a gnmi network device operation data. More information: https://gnmic.kmrd.dev/cmd/get. Get a snapshot of the device state at a specific path: gnmic --address {{ip:port}} get --path {{path}} Query the device state at multiple paths: gnmic -a {{ip:port}} get --path {{path1}} --path {{path2}} Query the device state at multiple paths with a common prefix: gnmic -a {{ip:port}} get --prefix {{prefix}} --path {{path1}} --path {{path2}} Query the device state and specify response encoding (json_ietf): gnmic -a {{ip:port}} get --path {{path}} --encoding json_ietf
gnmic set Modify gnmi network device configuration. More information: https://gnmic.kmrd.dev/cmd/set. Update the value of a path: gnmic --address {{ip:port}} set --update-path {{path}} --update-value {{value}} Update the value of a path to match the contents of a json file: gnmic -a {{ip:port}} set --update-path {{path}} --update-file {{filepath}} Replace the value of a path to match the contents of a json file: gnmic -a {{ip:port}} set --replace-path {{path}} --replace-file {{filepath}} Delete the node at a given path: gnmic -a {{ip:port}} set --delete {{path}}
gnmic sub This command is an alias of gnmic subscribe. More information: https://gnmic.kmrd.dev/cmd/subscribe. View documentation for the original command: tldr gnmic subscribe
gnmic subscribe Subscribe to a gnmic network device state updates. More information: https://gnmic.kmrd.dev/cmd/subscribe. Subscribe to target state updates under the subtree of a specific path: gnmic --address {{ip:port}} subscribe --path {{path}} Subscribe to a target with a sample interval of 30s (default is 10s): gnmic -a {{ip:port}} subscribe --path {{path}} --sample-interval 30s Subscribe to a target with sample interval and updates only on change: gnmic -a {{ip:port}} subscribe --path {{path}} --stream-mode on-change --heartbeat-interval 1m
gnomon Utility to annotate console logging statements with timestamps and find slow processes. More information: https://github.com/paypal/gnomon. Use UNIX (or DOS) pipes to pipe stdout of any command through gnomon: {{npm test}} | gnomon Show number of seconds since the start of the process: {{npm test}} | gnomon --type=elapsed-total Show an absolute timestamp in UTC: {{npm test}} | gnomon --type=absolute Set a high threshold of 0.5 seconds for the elapsed time; exceeding which the timestamp will be colored bright red: {{npm test}} | gnomon --high {{0.
gnucash Personal and small-business financial-accounting software. More information: https://gnucash.org. Launch GnuCash and load the previously opened file: gnucash Launch GnuCash and load the specified file: gnucash {{path/to/file.gnucash}} Launch GnuCash and load an empty file: gnucash --nofile
gnucash-cli A command-line version of GnuCash. More information: https://gnucash.org. Get quotes for currencies and stocks specified in a file and print them: gnucash-cli --quotes get {{path/to/file.gnucash}} Generate a financial report of a specific type, specified by --name: gnucash-cli --report run --name "{{Balance Sheet}}" {{path/to/file.gnucash}}
gnuplot A graph plotter that outputs in several formats. More information: http://www.gnuplot.info/. Start the interactive graph plotting shell: gnuplot Plot the graph for the specified graph definition file: gnuplot {{path/to/definition.plt}} Set the output format by executing a command before loading the definition file: gnuplot -e "{{set output "path/to/filename.png" size 1024,768}}" {{path/to/definition.plt}} Persist the graph plot preview window after gnuplot exits: gnuplot --persist {{path/to/definition.plt}}
go Tool for managing go source code. Some subcommands such as go build have their own usage documentation. More information: https://golang.org. Download and install a package, specified by its import path: go get {{package_path}} Compile and run a source file (it has to contain a main package): go run {{file}}.go Compile a source file into a named executable: go build -o {{executable}} {{file}}.go Compile the package present in the current directory: go build
go bug Report a bug. More information: https://golang.org/cmd/go/#hdr-Start_a_bug_report. Open a web page to start a bug report: go bug
go build Compile Go sources. More information: https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies. Compile a ‘package main’ file (output will be the filename without extension): go build {{path/to/main.go}} Compile, specifying the output filename: go build -o {{path/to/binary}} {{path/to/source.go}} Compile a package: go build -o {{path/to/binary}} {{path/to/package}} Compile a main package into an executable, enabling data race detection: go build -race -o {{path/to/executable}} {{path/to/main/package}}
go clean Remove object files and cached files. More information: https://golang.org/cmd/go/#hdr-Remove_object_files_and_cached_files. Print the remove commands instead of actually removing anything: go clean -n Delete the build cache: go clean -cache Delete all cached test results: go clean -testcache Delete the module cache: go clean -modcache
go doc Show documentation for a package or symbol. More information: https://golang.org/cmd/go/#hdr-Show_documentation_for_package_or_symbol. Show documentation for the current package: go doc Show package documentation and exported symbols: go doc {{encoding/json}} Show also documentation of symbols: go doc -all {{encoding/json}} Show also sources: go doc -all -src {{encoding/json}} Show a specific symbol: go doc -all -src {{encoding/json.Number}}
go env Manage environment variables used by the Go toolchain. More information: https://golang.org/cmd/go/#hdr-Print_Go_environment_information. Show all environment variables: go env Show a specific environment variable: go env {{GOPATH}} Set an environment variable to a value: go env -w {{GOBIN}}={{path/to/directory}} Reset an environment variable’s value: go env -u {{GOBIN}}
go fix Update packages to use new APIs. More information: https://golang.org/cmd/go/#hdr-Update_packages_to_use_new_APIs. Update packages to use new APIs: go fix {{packages}}
go fmt Format Go source files. Prints the filenames that are changed. More information: https://pkg.go.dev/cmd/go#hdr-Gofmt__reformat__package_sources. Format Go source files in the current directory: go fmt Format a specific Go package in your import path ($GOPATH/src): go fmt {{path/to/package}} Format the package in the current directory and all subdirectories (note the ...): go fmt {{./...}} Print what format commands would’ve been run, without modifying anything: go fmt -n Print which format commands are run as they are run: go fmt -x
go generate Generate Go files by running commands within source files. More information: https://golang.org/cmd/go/#hdr-Generate_Go_files_by_processing_source. Generate Go files by running commands within source files: go generate
go get Add a dependency package, or download packages in legacy GOPATH mode. More information: https://pkg.go.dev/cmd/go#hdr-Add_dependencies_to_current_module_and_install_them. Add a specified package to go.mod in module-mode or install the package in GOPATH-mode: go get {{example.com/pkg}} Modify the package with a given version in module-aware mode: go get {{example.com/pkg}}@{{v1.2.3}} Remove a specified package: go get {{example.com/pkg}}@{{none}}
go install Compile and install packages named by the import paths. More information: https://pkg.go.dev/cmd/go#hdr-Compile_and_install_packages_and_dependencies. Compile and install the current package: go install Compile and install a specific local package: go install {{path/to/package}} Install the latest version of a program, ignoring go.mod in the current directory: go install {{golang.org/x/tools/gopls}}@{{latest}} Install a program at the version selected by go.mod in the current directory: go install {{golang.org/x/tools/gopls}}
go list List packages or modules. More information: https://golang.org/cmd/go/#hdr-List_packages_or_modules. List packages: go list ./... List standard packages: go list std List packages in JSON format: go list -json time net/http List module dependencies and available updates: go list -m -u all
go mod Module maintenance. More information: https://golang.org/cmd/go/#hdr-Module_maintenance. Initialize new module in current directory: go mod init {{moduleName}} Download modules to local cache: go mod download Add missing and remove unused modules: go mod tidy Verify dependencies have expected content: go mod verify Copy sources of all dependencies into the vendor directory: go mod vendor
go run Compile and run Go code without saving a binary. More information: https://pkg.go.dev/cmd/go#hdr-Compile_and_run_Go_program. Run a Go file: go run {{path/to/file.go}} Run a main Go package: go run {{path/to/package}}
go test Tests Go packages (files have to end with _test.go). More information: https://golang.org/cmd/go/#hdr-Testing_flags. Test the package found in the current directory: go test [v]erbosely test the package in the current directory: go test -v Test the packages in the current directory and all subdirectories (note the ...): go test -v ./... Test the package in the current directory and run all benchmarks: go test -v -bench . Test the package in the current directory and run all benchmarks for 50 seconds: go test -v -bench .
go tool Run a specific Go tool or command. Execute a Go command as a stand-alone binary, typically for debugging. More information: https://pkg.go.dev/cmd/go#hdr-Run_specified_go_tool. List available tools: go tool Run the go link tool: go tool link {{path/to/main.o}} Print the command that would be executed, but do not execute it (similar to whereis): go tool -n {{command}} {{arguments}} Display documentation for a specified tool: go tool {{command}} --help
go version Print Go version. More information: https://golang.org/cmd/go/#hdr-Print_Go_version. Print Go version: go version Print the Go version used to build the named executable file: go version {{path/to/executable}}
go vet Check Go source code and report suspicious constructs (e.g. lint your Go source files). Go vet returns a non-zero exit code if problems are found; returns a zero exit code if no problems are found. More information: https://pkg.go.dev/cmd/vet. Check the Go package in the current directory: go vet Check the Go package in the specified path: go vet {{path/to/file_or_directory}} List available checks that can be run with go vet: go tool vet help
gobuster Brute-forces hidden paths on web servers and more. More information: https://github.com/OJ/gobuster. Discover directories and files that match in the wordlist: gobuster dir --url {{https://example.com/}} --wordlist {{path/to/file}} Discover subdomains: gobuster dns --domain {{example.com}} --wordlist {{path/to/file}} Discover Amazon S3 buckets: gobuster s3 --wordlist {{path/to/file}} Discover other virtual hosts on the server: gobuster vhost --url {{https://example.com/}} --wordlist {{path/to/file}} Fuzz the value of a parameter: gobuster fuzz --url {{https://example.com/?parameter=FUZZ}} --wordlist {{path/to/file}} Fuzz the name of a parameter: gobuster fuzz --url {{https://example.
gocryptfs Encrypted overlay filesystem written in Go. More information: https://github.com/rfjakob/gocryptfs. Initialize an encrypted filesystem: gocryptfs -init {{path/to/cipher_dir}} Mount an encrypted filesystem: gocryptfs {{path/to/cipher_dir}} {{path/to/mount_point}} Mount with the explicit master key instead of password: gocryptfs --masterkey {{path/to/cipher_dir}} {{path/to/mount_point}} Change the password: gocryptfs --passwd {{path/to/cipher_dir}} Make an encrypted snapshot of a plain directory: gocryptfs --reverse {{path/to/plain_dir}} {{path/to/cipher_dir}}
godoc Show documentation for go packages. More information: https://godoc.org/. Display help for package “fmt”: godoc {{fmt}} Display help for the function “Printf” of “fmt” package: godoc {{fmt}} {{Printf}} Serve documentation as a web server on port 6060: godoc -http=:{{6060}} Create an index file: godoc -write_index -index_files={{path/to/file}} Use the given index file to search the docs: godoc -http=:{{6060}} -index -index_files={{path/to/file}}
godot An open source 2D and 3D game engine. More information: https://godotengine.org/. Run a project if the current directory contains a project.godot file, otherwise open the project manager: godot Edit a project (the current directory must contain a project.godot file): godot -e Open the project manager even if the current directory contains a project.godot file: godot -p Export a project for a given export preset (the preset must be defined in the project): godot --export {{preset}} {{output_path}}
gofmt Tool for formatting Go source code. More information: https://golang.org/cmd/gofmt/. Format a file and display the result to the console: gofmt {{source.go}} Format a file, overwriting the original file in-place: gofmt -w {{source.go}} Format a file, and then simplify the code, overwriting the original file: gofmt -s -w {{source.go}} Print all (including spurious) errors: gofmt -e {{source.go}}
goimports Updates Go import lines, adding missing ones and removing unreferenced ones. More information: https://godoc.org/golang.org/x/tools/cmd/goimports. Display the completed import source file: goimports {{path/to/file}}.go Write the result back to the source file instead of stdout: goimports -w {{path/to/file}}.go Display diffs and write the result back to the source file: goimports -w -d {{path/to/file}}.go Set the import prefix string after 3rd-party packages (comma-separated list): goimports -local {{path/to/package}} {{path/to/file}}.go
google-chrome This command is an alias of chromium. More information: https://chrome.google.com. View documentation for the original command: tldr chromium
googler Search Google from command-line. More information: https://github.com/jarun/googler. Search Google for a keyword: googler {{keyword}} Search Google and open the first result in web browser: googler -j {{keyword}} Show N search results (default 10): googler -n {{N}} {{keyword}} Disable automatic spelling correction: googler -x {{keyword}} Search one site for a keyword: googler -w {{site}} {{keyword}} Show Google search result in JSON format: googler --json {{keyword}} Perform in-place self-upgrade: googler -u
gopass Standard Unix Password Manager for Teams. Written in Go. More information: https://www.gopass.pw. Initialize the configuration settings: gopass init Create a new entry: gopass new Show all stores: gopass mounts Mount a shared Git store: gopass mounts add {{store_name}} {{git_repo_url}} Search interactively using a keyword: gopass show {{keyword}} Search using a keyword: gopass find {{keyword}} Sync all mounted stores: gopass sync Show a particular password entry: gopass {{store_name|path/to/directory|email@email.com}}
gops List and diagnose Go processes currently running on your system. More information: https://github.com/google/gops. Print all go processes running locally: gops Print more information about a process: gops {{pid}} Display a process tree: gops tree Print the current stack trace from a target program: gops stack {{pid|addr}} Print the current runtime memory statistics: gops memstats {{pid|addr}}
goreload Live reload utility for Go programs. More information: https://github.com/acoshift/goreload. Set the name of the binary file to watch (defaults to .goreload): goreload -b {{path/to/binary}} {{path/to/file}}.go Set a custom log prefix (defaults to goreload): goreload --logPrefix {{prefix}} {{path/to/file}}.go Reload whenever any file changes: goreload --all
gotty Share your terminal as a web application. More information: https://github.com/yudai/gotty. Share result of command: gotty {{command}} Share with write permission: gotty -w {{shell}} Share with credential (Basic Auth): gotty -w -c {{username}}:{{password}} {{shell}}
gource Renders an animated tree diagram of Git, SVN, Mercurial and Bazaar repositories. It shows files and directories being created, modified or removed over time. More information: https://gource.io. Run gource in a directory (if it isn’t the repository’s root directory, the root is sought up from there): gource {{path/to/repository}} Run gource in the current directory, with a custom output resolution: gource -{{width}}x{{height}} Set a custom timescale for the animation: gource -c {{time_scale_multiplier}}
gow Watches Go files and restarts the app on changes. More information: https://github.com/mitranim/gow. Start and watch the current directory: gow run . Start the application with the specified arguments: gow run . {{argument1 argument2 ...}} Watch subdirectories in verbose mode: gow -v -w={{path/to/directory1,path/to/directory2,...}} run . Watch the specified file extensions: gow -e={{go,html}} run . Display help: gow -h
gox A tool for cross-compiling Go programs. More information: https://github.com/mitchellh/gox. Compile Go program in the current directory for all operating systems and architecture combinations: gox Download and compile a Go program from a remote URL: gox {{url_1}} {{url_2}} Compile current directory for a particular operating system: gox -os="{{os}}" Compile current directory for a single operating system and architecture combination: gox -osarch="{{os}}/{{arch}}"
gpg GNU Privacy Guard. See gpg2 for GNU Privacy Guard 2. Most operating systems symlink gpg to gpg2. More information: https://gnupg.org. Create a GPG public and private key interactively: gpg --full-generate-key Sign doc.txt without encryption (writes output to doc.txt.asc): gpg --clearsign {{doc.txt}} Encrypt and sign doc.txt for alice@example.com and bob@example.com (output to doc.txt.gpg): gpg --encrypt --sign --recipient {{alice@example.com}} --recipient {{bob@example.com}} {{doc.txt}} Encrypt doc.txt with only a passphrase (output to doc.txt.gpg): gpg --symmetric {{doc.
gpg-tui Terminal user interface for GNU Public Guard. More information: https://github.com/orhun/gpg-tui. Start gpg-tui: gpg-tui Start gpg-tui with color and ASCII armored output: gpg-tui --style {{colored}} --armor Show help in gpg-tui: ? Quit gpg-tui: q Interactively generate a new key: g Export the selected key: x Set the detail level for the selected key: 1|2|3 Refresh gpg-tui: r
gpg-zip Encrypt files and directories in an archive using GPG. More information: https://www.gnupg.org/documentation/manuals/gnupg/gpg_002dzip.html. Encrypt a directory into archive.gpg using a passphrase: gpg-zip --symmetric --output {{archive.gpg}} {{path/to/directory}} Decrypt archive.gpg into a directory of the same name: gpg-zip --decrypt {{path/to/archive.gpg}} List the contents of the encrypted archive.gpg: gpg-zip --list-archive {{path/to/archive.gpg}}
gpg2 GNU Privacy Guard 2. See gpg for GNU Privacy Guard 1. More information: https://docs.releng.linuxfoundation.org/en/latest/gpg.html. List imported keys: gpg2 --list-keys Encrypt a specified file for a specified recipient, writing the output to a new file with .gpg appended: gpg2 --encrypt --recipient {{alice@example.com}} {{path/to/doc.txt}} Encrypt a specified file with only a passphrase, writing the output to a new file with .gpg appended: gpg2 --symmetric {{path/to/doc.txt}} Decrypt a specified file, writing the result to stdout: gpg2 --decrypt {{path/to/doc.
gpgconf Modify .gnupg home directories. More information: https://www.gnupg.org/documentation/manuals/gnupg/gpgconf.html. List all components: gpgconf --list-components List the directories used by gpgconf: gpgconf --list-dirs List all options of a component: gpgconf --list-options {{component}} List programs and test whether they are runnable: gpgconf --check-programs Reload a component: gpgconf --reload {{component}}
gpgv Verify OpenPGP signatures. More information: https://www.gnupg.org/documentation/manuals/gnupg/gpgv.html. Verify a signed file: gpgv {{path/to/file}} Verify a signed file using a detached signature: gpgv {{path/to/signature}} {{path/to/file}} Add a file to the list of keyrings (a single exported key also counts as a keyring): gpgv --keyring {{./alice.keyring}} {{path/to/signature}} {{path/to/file}}
gprbuild A high-level build tool for projects written in Ada and other languages (C/C++/Fortran). More information: https://docs.adacore.com/gprbuild-docs/html/gprbuild_ug.html. Build a project (assuming only one *.gpr file exists in the current directory): gprbuild Build a specific [P]roject file: gprbuild -P{{project_name}} Clean up the build workspace: gprclean Install compiled binaries: gprinstall --prefix {{path/to/installation/dir}}
gprof Performance analysis tool for many programming languages. It profiles the function executions of a program. More information: https://ftp.gnu.org/old-gnu/Manuals/gprof-2.9.1/html_mono/gprof.html. Compile binary with gprof information and run it to get gmon.out: gcc -pg {{program.c}} && {{./a.out}} Run gprof to obtain profile output: gprof Suppress profile field’s description: gprof -b Display routines that have zero usage: gprof -bz
gradle Gradle is an open source build automation system. More information: https://gradle.org. Compile a package: gradle build Exclude test task: gradle build -x {{test}} Run in offline mode to prevent Gradle from accessing the network during builds: gradle build --offline Clear the build directory: gradle clean Build an Android Package (APK) in release mode: gradle assembleRelease List the main tasks: gradle tasks List all the tasks: gradle tasks --all
grafana-cli A small executable that is bundled with Grafana serve. More information: https://grafana.com/docs/grafana/latest/cli/. Install, update, or remove specific plugins: grafana-cli plugins {{install|update|remove}} {{plugin_id1 plugin_id2 ...}} List all installed plugins: grafana-cli plugins ls
grap A charting preprocessor for the groff (GNU Troff) document formatting system. See also pic and groff. More information: https://manned.org/grap. Process a grap file and save the output file for future processing with pic and groff: grap {{path/to/input.grap}} > {{path/to/output.pic}} Typeset a grap file to PDF using the [me] macro package, saving the output to a file: grap {{path/to/input.grap}} | pic -T {{pdf}} | groff -{{me}} -T {{pdf}} > {{path/to/output.pdf}}
graphml2gv Convert a graph from graphml to gv format. Converters: gml2gv, gv2gml, gv2gxl, gxl2gv, graphml2gv & mm2gv. More information: https://graphviz.org/pdf/graphml2gv.1.pdf. Convert a graph from gml to gv format: graphml2gv -o {{output.gv}} {{input.gml}} Convert a graph using stdin and stdout: cat {{input.gml}} | graphml2gv > {{output.gv}} Display help: graphml2gv -?
grep Find patterns in files using regular expressions. More information: https://www.gnu.org/software/grep/manual/grep.html. Search for a pattern within a file: grep "{{search_pattern}}" {{path/to/file}} Search for an exact string (disables regular expressions): grep --fixed-strings "{{exact_string}}" {{path/to/file}} Search for a pattern in all files recursively in a directory, showing line numbers of matches, ignoring binary files: grep --recursive --line-number --binary-files={{without-match}} "{{search_pattern}}" {{path/to/directory}} Use extended regular expressions (supports ?, +, {}, () and |), in case-insensitive mode: grep --extended-regexp --ignore-case "{{search_pattern}}" {{path/to/file}}
grex Generate regular expressions. More information: https://github.com/pemistahl/grex. Generate a simple regular expression: grex {{space_separated_strings}} Generate a case-insensitive regular expression: grex -i {{space_separated_strings}} Replace digits with ‘\d’: grex -d {{space_separated_strings}} Replace Unicode word character with ‘\w’: grex -w {{space_separated_strings}} Replace spaces with ‘\s’: grex -s {{space_separated_strings}} Add {min, max} quantifier representation for repeating sub-strings: grex -r {{space_separated_strings}}
grip Preview GitHub-flavoured Markdown files locally. More information: https://github.com/joeyespo/grip. Start the server and serve the rendered README file of a current directory: grip Start the server and serve a specific Markdown file: grip {{path/to/file.md}} Start the server and open the README file of the current directory in the browser: grip --browser Start the server in the specified port and serve the rendered README file of the current directory: grip {{port}}
groff GNU replacement for the troff and nroff typesetting utilities. More information: https://www.gnu.org/software/groff. Format output for a PostScript printer, saving the output to a file: groff {{path/to/input.roff}} > {{path/to/output.ps}} Render a man page using the ASCII output device, and display it using a pager: groff -man -T ascii {{path/to/manpage.1}} | less --RAW-CONTROL-CHARS Render a man page into an HTML file: groff -man -T html {{path/to/manpage.1}} > {{path/to/manpage.html}} Typeset a roff file containing [t]ables and [p]ictures, using the [me] macro set, to PDF, saving the output: groff {{-t}} {{-p}} -{{me}} -T {{pdf}} {{path/to/input.
groups Print group memberships for a user. See also: groupadd, groupdel, groupmod. More information: https://www.gnu.org/software/coreutils/groups. Print group memberships for the current user: groups Print group memberships for a list of users: groups {{username1 username2 ...}}
grpcurl Interact with gRPC servers. Like curl, but for gRPC. More information: https://github.com/fullstorydev/grpcurl. Send an empty request: grpcurl {{grpc.server.com:443}} {{my.custom.server.Service/Method}} Send a request with a header and a body: grpcurl -H "{{Authorization: Bearer $token}}" -d {{'{"foo": "bar"}'}} {{grpc.server.com:443}} {{my.custom.server.Service/Method}} List all services exposed by a server: grpcurl {{grpc.server.com:443}} list List all methods in a particular service: grpcurl {{grpc.server.com:443}} list {{my.custom.server.Service}}
grumphp A PHP Composer plugin that enables source code quality checks. More information: https://github.com/phpro/grumphp. Register the Git hooks: grumphp git:init Trigger the pre-commit hook manually: grumphp git:pre-commit Check every versioned file: grumphp run
grunt A JavaScript task runner for automating processes. More information: https://github.com/gruntjs/grunt-cli. Run the default task process: grunt Run one or more specific space-separated task(s): grunt {{task_name}} Specify an alternative configuration file: grunt --gruntfile {{path/to/file}} Specify an alternative base path for relative files: grunt --base {{path/to/directory}} Specify an additional directory to scan for tasks in: grunt --tasks {{path/to/directory}} Perform a dry-run without writing any files: grunt --no-write List all available options: grunt --help
gst-inspect-1.0 Print information on GStreamer plugins. More information: https://gstreamer.freedesktop.org/documentation/tools/gst-inspect.html?gi-language=c. Print information on a plugin: gst-inspect-1.0 {{plugin}} List hardware transcoding capabilities of your device: gst-inspect-1.0 {{vaapi|nvcodec}}
gst-launch-1.0 Build and run a GStreamer pipeline. More information: https://gstreamer.freedesktop.org/documentation/tools/gst-launch.html?gi-language=c. Play test video in a window: gst-launch-1.0 videotestsrc ! xvimagesink Play a media file in a window: gst-launch-1.0 playbin uri={{protocol}}://{{host}}/{{path/to/file}} Re-encode a media file: gst-launch-1.0 filesrc location={{path/to/file}} ! {{file_type}}demux ! {{codec_type}}dec ! {{codec_type}}enc ! {{file_type}}mux ! filesink location={{path/to/file}} Stream a file to an RTSP server: gst-launch-1.0 filesrc location={{path/to/file}} ! rtspclientsink location=rtsp://{{host_IP}}/{{path/to/file}}
gsutil Access Google Cloud Storage. You can use gsutil to do a wide range of bucket and object management tasks. More information: https://cloud.google.com/storage/docs/gsutil. List all buckets in a project you are logged into: gsutil ls List the objects in a bucket: gsutil ls -r 'gs://{{bucket_name}}/{{prefix}}**' Download an object from a bucket: gsutil cp gs://{{bucket_name}}/{{object_name}} {{path/to/save_location}} Upload an object to a bucket: gsutil cp {{object_location}} gs://{{destination_bucket_name}}/ Rename or move objects in a bucket: gsutil mv gs://{{bucket_name}}/{{old_object_name}} gs://{{bucket_name}}/{{new_object_name}}
gt Create and manage sequences of dependent code changes (stacks) for Git and GitHub. More information: https://docs.graphite.dev. Authenticate the CLI with Graphite’s API: gt auth --token {{graphite_cli_auth_token}} Initialise gt for the repository in the current directory: gt repo init Create a new branch stacked on top of the current branch and commit staged changes: gt branch create {{branch_name}} Create a new commit and fix upstack branches: gt commit create -m {{commit_message}}
gtop System monitoring dashboard for the terminal. More information: https://github.com/aksakalli/gtop. Show the system stats dashboard: gtop Sort by CPU usage: c Sort by memory usage: m
guacd Apache Guacamole proxy daemon. Support loader for client plugins to interface between the Guacamole protocol and any arbitrary remote desktop protocol (e.g. RDP, VNC, Other). More information: https://guacamole.apache.org/. Bind to a specific port on localhost: guacd -b {{127.0.0.1}} -l {{4823}} Start in debug mode, keeping the process in the foreground: guacd -f -L {{debug}} Start with TLS support: guacd -C {{my-cert.crt}} -K {{my-key.pem}} Write the PID to a file: guacd -p {{path/to/file.
guetzli JPEG image compression utility. More information: https://github.com/google/guetzli. Compress a JPEG image: guetzli {{input.jpg}} {{output.jpg}} Create a compressed JPEG from a PNG: guetzli {{input.png}} {{output.jpg}} Compress a JPEG with the desired visual quality (84-100): guetzli --quality {{quality_value}} {{input.jpg}} {{output.jpg}}
guile Guile Scheme interpreter. More information: https://www.gnu.org/software/guile. Start a REPL (interactive shell): guile Execute the script in a given Scheme file: guile {{script.scm}} Execute a Scheme expression: guile -c "{{expression}}" Listen on a port or a Unix domain socket (the default is port 37146) for remote REPL connections: guile --listen={{port_or_socket}}
gulp JavaScript task runner and streaming build system. Tasks are defined within gulpfile.js at the project root. More information: https://github.com/gulpjs/gulp-cli. Run the default task: gulp Run individual tasks: gulp {{task}} {{othertask}}
gum A tool for making glamorous shell scripts. More information: https://github.com/charmbracelet/gum. Interactively pick a specific option to print to stdout: gum choose "{{option_1}}" "{{option_2}}" "{{option_3}}" Open an interactive prompt for the user to input a string with a specific placeholder: gum input --placeholder "{{value}}" Open an interactive confirmation prompt and exit with either 0 or 1: gum confirm "{{Continue?}}" --default=false --affirmative "{{Yes}}" --negative "{{No}}" {{&& echo "Yes selected" || echo "No selected"}}
gunicorn Python WSGI HTTP Server. More information: https://gunicorn.org/. Run Python web app: gunicorn {{import.path:app_object}} Listen on port 8080 on localhost: gunicorn --bind {{localhost}}:{{8080}} {{import.path:app_object}} Turn on live reload: gunicorn --reload {{import.path:app_object}} Use 4 worker processes for handling requests: gunicorn --workers {{4}} {{import.path:app_object}} Use 4 worker threads for handling requests: gunicorn --threads {{4}} {{import.path:app_object}} Run app over HTTPS: gunicorn --certfile {{cert.pem}} --keyfile {{key.pem}} {{import.path:app_object}}
gunzip Extract file(s) from a gzip (.gz) archive. More information: https://manned.org/gunzip. Extract a file from an archive, replacing the original file if it exists: gunzip {{archive.tar.gz}} Extract a file to a target destination: gunzip --stdout {{archive.tar.gz}} > {{archive.tar}} Extract a file and keep the archive file: gunzip --keep {{archive.tar.gz}} List the contents of a compressed file: gunzip --list {{file.txt.gz}} Decompress an archive from stdin: cat {{path/to/archive.gz}} | gunzip
gv2gml Convert a graph from gv to gml format. Converters: gml2gv, gv2gml, gv2gxl, gxl2gv, graphml2gv & mm2gv. More information: https://graphviz.org/pdf/gml2gv.1.pdf. Convert a graph from gv to gml format: gv2gml -o {{output.gml}} {{input.gv}} Convert a graph using stdin and stdout: cat {{input.gv}} | gv2gml > {{output.gml}} Display help: gv2gml -?
gv2gxl Convert a graph from gv to gxl format. Converters: gml2gv, gv2gml, gv2gxl, gxl2gv, graphml2gv & mm2gv. More information: https://graphviz.org/pdf/gxl2gv.1.pdf. Convert a graph from gv to gxl format: gv2gxl -o {{output.gxl}} {{input.gv}} Convert a graph using stdin and stdout: cat {{input.gv}} | gv2gxl > {{output.gxl}} Display help: gv2gxl -?
gvcolor Colorize a ranked digraph with a range of colors. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://graphviz.org/pdf/gvcolor.1.pdf. Colorize one or more ranked digraph (that were already processed by dot): gvcolor {{path/to/layout1.gv}} {{path/to/layout2.gv ...}} > {{path/to/output.gv}} Lay out a graph and colorize it, then convert to a PNG image: dot {{path/to/input.gv}} | gvcolor | dot -T {{png}} > {{path/to/output.png}} Display help for gvcolor: gvcolor -?
gvpack Combine several graph layouts (that already have layout information). Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://graphviz.org/pdf/gvpack.1.pdf. Combine several graph layouts (that already have layout information): gvpack {{path/to/layout1.gv}} {{path/to/layout2.gv ...}} > {{path/to/output.gv}} Combine several graph layouts at the graph level, keeping graphs separate: gvpack -g {{path/to/layout1.gv}} {{path/to/layout2.gv ...}} > {{path/to/output.gv}} Combine several graph layouts at the node level, ignoring clusters: gvpack -n {{path/to/layout1.
gxl2gv Convert a graph from gxl to gv format. Converters: gml2gv, gv2gml, gv2gxl, gxl2gv, graphml2gv & mm2gv. More information: https://graphviz.org/pdf/gxl2gv.1.pdf. Convert a graph from gxl to gv format: gxl2gv -o {{output.gv}} {{input.gxl}} Convert a graph using stdin and stdout: cat {{input.gxl}} | gxl2gv > {{output.gv}} Display help: gxl2gv -?
gyb Command line tool for locally backing up Gmail messages using Gmail’s API over HTTPS. More information: https://github.com/GAM-team/got-your-back. Estimate the number and the size of all emails on your Gmail account: gyb --email {{email@gmail.com}} --action estimate Backup a Gmail account to a specific directory: gyb --email {{email@gmail.com}} --action backup --local-folder {{path/to/directory}} Backup only important or starred emails from a Gmail account to the default local folder: gyb --email {{email@gmail.com}} --search "{{is:important OR is:starred}}"
gzip Compress/uncompress files with gzip compression (LZ77). More information: https://www.gnu.org/software/gzip/manual/gzip.html. Compress a file, replacing it with a gzipped compressed version: gzip {{file.ext}} Decompress a file, replacing it with the original uncompressed version: gzip -d {{file.ext}}.gz Compress a file, keeping the original file: gzip --keep {{file.ext}} Compress a file specifying the output filename: gzip -c {{file.ext}} > {{compressed_file.ext.gz}} Decompress a gzipped file specifying the output filename: gzip -c -d {{file.ext}}.gz > {{uncompressed_file.
hadolint Dockerfile linter. More information: https://github.com/hadolint/hadolint. Lint a Dockerfile: hadolint {{path/to/Dockerfile}} Lint a Dockerfile, displaying the output in JSON format: hadolint --format {{json}} {{path/to/Dockerfile}} Lint a Dockerfile, displaying the output in a specific format: hadolint --format {{tty|json|checkstyle|codeclimate|codacy}} {{path/to/Dockerfile}} Lint a Dockerfile ignoring specific rules: hadolint --ignore {{DL3006}} --ignore {{DL3008}} {{path/to/Dockerfile}} Lint multiple Dockerfiles using specific trusted registries: hadolint --trusted-registry {{docker.io}} --trusted-registry {{example.com}}:{{5000}} {{path/to/Dockerfile}} {{path/to/another/Dockerfile}}
hakyll-init Generate a new Hakyll sample blog. More information: https://github.com/jaspervdj/hakyll-init. Generate a new Hakyll sample blog: hakyll-init {{path/to/directory}} Show help for hakyll-init: hakyll-init --help
handbrakecli Command-line interface to the HandBrake video conversion and DVD ripping tool. More information: https://handbrake.fr/. Convert a video file to MKV (AAC 160kbit audio and x264 CRF20 video): handbrakecli --input {{input.avi}} --output {{output.mkv}} --encoder x264 --quality 20 --ab 160 Resize a video file to 320x240: handbrakecli --input {{input.mp4}} --output {{output.mp4}} --width 320 --height 240 List available presets: handbrakecli --preset-list Convert an AVI video to MP4 using the Android preset: handbrakecli --preset="Android" --input {{input.
hangups Third party command-line client for Google Hangouts. More information: https://github.com/tdryer/hangups. Start hangups: hangups View troubleshooting information and help: hangups -h Set a refresh token for hangups: hangups --token-path {{path/to/token}}
hardhat A development environment for Ethereum software. More information: https://hardhat.org. List available subcommands (or create a new project if no configuration exists): hardhat Compile the current project and build all artifacts: hardhat compile Run a user-defined script after compiling the project: hardhat run {{path/to/script.js}} Run Mocha tests: hardhat test Run all given test files: hardhat test {{path/to/file1.js}} {{path/to/file2.js}} Start a local Ethereum JSON-RPC node for development: hardhat node Start a local Ethereum JSON-RPC node with a specific hostname and port: hardhat node --hostname {{hostname}} --port {{port}}
hashcat Fast and advanced password recovery tool. More information: https://hashcat.net/wiki/doku.php?id=hashcat. Perform a brute-force attack (mode 3) with the default hashcat mask: hashcat --hash-type {{hash_type_id}} --attack-mode {{3}} {{hash_value}} Perform a brute-force attack (mode 3) with a known pattern of 4 digits: hashcat --hash-type {{hash_type_id}} --attack-mode {{3}} {{hash_value}} "{{?d?d?d?d}}" Perform a brute-force attack (mode 3) using at most 8 of all printable ASCII characters: hashcat --hash-type {{hash_type_id}} --attack-mode {{3}} --increment {{hash_value}} "{{?a?a?a?a?a?a?a?a}}"
hashid Python3 program that identifies data and password hashes. More information: https://github.com/psypanda/hashID. Identify hashes from stdin (through typing, copying and pasting, or piping the hash into the program): hashid Identify hashes passed as arguments (multiple hashes can be passed): hashid {{hash}} Identify hashes on a file (one hash per line): hashid {{path/to/hashes.txt}} Show all possible hash types (including salted hashes): hashid --extended {{hash}} Show hashcat’s mode number and john’s format string of the hash types: hashid --mode --john {{hash}}
haxelib Haxe Library Manager. More information: https://lib.haxe.org/. Search for a Haxe library: haxelib search {{keyword}} Install a Haxe library: haxelib install {{libname}} Install a specific version of a Haxe library: haxelib install {{libname}} {{version}} Upgrade all installed Haxe libraries: haxelib upgrade Install the development version of a library from a Git repository: haxelib git {{libname}} {{git_url}} Uninstall a Haxe library: haxelib remove {{libname}} Print a tree of locally installed Haxe libraries: haxelib list
hcloud Show how to use the CLI for Hetzner Cloud. More information: https://github.com/hetznercloud/cli. Show available commands and flags: hcloud Show help for hcloud: hcloud -h Show available commands and flags for hcloud contexts: hcloud context
head Output the first part of files. More information: https://manned.org/head.1p. Output the first few lines of a file: head -n {{count}} {{path/to/file}}
helix Helix, A post-modern text editor, provides several modes for different kinds of text manipulation. Pressing i enters insert mode. <Esc> enters normal mode, which enables the use of Helix commands. More information: https://helix-editor.com. Open a file: helix {{path/to/file}} Change the Helix theme: :theme {{theme_name}} Save and Quit: :wq<Enter> Force-quit without saving: :q!<Enter> Undo the last operation: u Search for a pattern in the file (press n/N to go to next/previous match): /{{search_pattern}}<Enter>
hello Print “Hello, world!”, “hello, world” or a customizable text. More information: https://www.gnu.org/software/hello/. Print “Hello, world!”: hello Print “hello, world”, the traditional type: hello --traditional Print a text message: hello --greeting="{{greeting_text}}"
helm Helm is a package manager for Kubernetes. Some subcommands such as helm install have their own usage documentation. More information: https://helm.sh/. Create a helm chart: helm create {{chart_name}} Add a new helm repository: helm repo add {{repository_name}} List helm repositories: helm repo list Update helm repositories: helm repo update Delete a helm repository: helm repo remove {{repository_name}} Install a helm chart: helm install {{name}} {{repository_name}}/{{chart_name}} Download helm chart as a tar archive: helm get {{chart_release_name}}
helm install Install a helm chart. More information: https://helm.sh/docs/intro/using_helm/#helm-install-installing-a-package. Install a helm chart: helm install {{name}} {{repository_name}}/{{chart_name}} Install a helm chart from an unpacked chart directory: helm install {{name}} {{path/to/source_directory}} Install a helm chart from a URL: helm install {{package_name}} {{https://example.com/charts/packagename-1.2.3.tgz}} Install a helm chart and generate a name: helm install {{repository_name}}/{{chart_name}} --generate-name Perform a dry run: helm install {{name}} {{repository_name}}/{{chart_name}} --dry-run Install a helm chart with custom values: helm install {{name}} {{repository_name}}/{{chart_name}} --set {{parameter1}}={{value1}},{{parameter2}}={{value2}}
help2man Produce simple man pages from an executable’s --help and --version output. More information: https://www.gnu.org/software/help2man. Generate a man page for an executable: help2man {{executable}} Specify the “name” paragraph in the man page: help2man {{executable}} --name {{name}} Specify the section for the man page (defaults to 1): help2man {{executable}} --section {{section}} Output to a file instead of stdout: help2man {{executable}} --output {{path/to/file}} Display detailed help: help2man --help
heroku Create and manage Heroku apps. More information: https://www.heroku.com/. Log in to your Heroku account: heroku login Create a Heroku app: heroku create Show logs for an app: heroku logs --app {{app_name}} Run a one-off process inside a dyno (Heroku virtual machine): heroku run {{process_name}} --app {{app_name}} List dynos (Heroku virtual machines) for an app: heroku ps --app {{app_name}} Permanently destroy an app: heroku destroy --app {{app_name}}
hexdump An ASCII, decimal, hexadecimal, octal dump. More information: https://manned.org/hexdump. Print the hexadecimal representation of a file, replacing duplicate lines by ‘*’: hexdump {{path/to/file}} Display the input offset in hexadecimal and its ASCII representation in two columns: hexdump -C {{path/to/file}} Display the hexadecimal representation of a file, but interpret only n bytes of the input: hexdump -C -n{{number_of_bytes}} {{path/to/file}} Don’t replace duplicate lines with ‘*’: hexdump --no-squeezing {{path/to/file}}
hexo A fast, simple & powerful blog framework. More information: https://hexo.io/. Initialize a website: hexo init {{path/to/directory}} Create a new article: hexo new {{layout}} {{title}} Generate static files: hexo generate Start a local server: hexo server Deploy the website: hexo deploy Clean the cache file (db.json) and generated files (public/): hexo clean
hexyl A simple hex viewer for the terminal. Uses colored output to distinguish different categories of bytes. More information: https://github.com/sharkdp/hexyl. Print the hexadecimal representation of a file: hexyl {{path/to/file}} Print the hexadecimal representation of the first n bytes of a file: hexyl -n {{n}} {{path/to/file}} Print bytes 512 through 1024 of a file: hexyl -r {{512}}:{{1024}} {{path/to/file}} Print 512 bytes starting at the 1024th byte: hexyl -r {{1024}}:+{{512}} {{path/to/file}}
hg Mercurial - a distributed source control management system. Some subcommands such as hg commit have their own usage documentation. More information: https://www.mercurial-scm.org. Execute a Mercurial command: hg {{command}} Call general help: hg help Call help on a command: hg help {{command}} Check the Mercurial version: hg --version
hg add Adds specified files to the staging area for the next commit in Mercurial. More information: https://www.mercurial-scm.org/doc/hg.1.html#add. Add files or directories to the staging area: hg add {{path/to/file}} Add all unstaged files matching a specified pattern: hg add --include {{pattern}} Add all unstaged files, excluding those that match a specified pattern: hg add --exclude {{pattern}} Recursively add sub-repositories: hg add --subrepos Perform a test-run without performing any actions: hg add --dry-run
hg branch Create or show a branch name. More information: https://www.mercurial-scm.org/doc/hg.1.html#branch. Show the name of the currently active branch: hg branch Create a new branch for the next commit: hg branch {{branch_name}}
hg clone Create a copy of an existing repository in a new directory. More information: https://www.mercurial-scm.org/doc/hg.1.html#clone. Clone a repository to a specified directory: hg clone {{remote_repository_source}} {{destination_path}} Clone a repository to the head of a specific branch, ignoring later commits: hg clone --branch {{branch}} {{remote_repository_source}} Clone a repository with only the .hg directory, without checking out files: hg clone --noupdate {{remote_repository_source}} Clone a repository to a specific revision, tag or branch, keeping the entire history: hg clone --updaterev {{revision}} {{remote_repository_source}}
hg commit Commit all staged or specified files to the repository. More information: https://www.mercurial-scm.org/doc/hg.1.html#commit. Commit staged files to the repository: hg commit Commit a specific file or directory: hg commit {{path/to/file_or_directory}} Commit with a specific message: hg commit --message {{message}} Commit all files matching a specified pattern: hg commit --include {{pattern}} Commit all files, excluding those that match a specified pattern: hg commit --exclude {{pattern}} Commit using the interactive mode: hg commit --interactive
hg init Create a new repository in the specified directory. More information: https://www.mercurial-scm.org/doc/hg.1.html#init. Initialize a new repository in the current directory: hg init Initialize a new repository in the specified directory: hg init {{path/to/directory}}
hg log Display the revision history of the repository. More information: https://www.mercurial-scm.org/doc/hg.1.html#log. Display the entire revision history of the repository: hg log Display the revision history with an ASCII graph: hg log --graph Display the revision history with file names matching a specified pattern: hg log --include {{pattern}} Display the revision history, excluding file names that match a specified pattern: hg log --exclude {{pattern}} Display the log information for a specific revision: hg log --rev {{revision}}
hg pull Pull changes from a specified repository to the local repository. More information: https://www.mercurial-scm.org/doc/hg.1.html#pull. Pull from the “default” source path: hg pull Pull from a specified source repository: hg pull {{path/to/source_repository}} Update the local repository to the head of the remote: hg pull --update Pull changes even when the remote repository is unrelated: hg pull --force Specify a specific revision changeset to pull up to: hg pull --rev {{revision}}
hg push Push changes from the local repository to a specified destination. More information: https://www.mercurial-scm.org/doc/hg.1.html#push. Push changes to the “default” remote path: hg push Push changes to a specified remote repository: hg push {{path/to/destination_repository}} Push a new branch if it does not exist (disabled by default): hg push --new-branch Specify a specific revision changeset to push: hg push --rev {{revision}} Specify a specific branch to push: hg push --branch {{branch}}
hg remove Remove specified files from the staging area. More information: https://www.mercurial-scm.org/doc/hg.1.html#remove. Remove files or directories from the staging area: hg remove {{path/to/file}} Remove all staged files matching a specified pattern: hg remove --include {{pattern}} Remove all staged files, excluding those that match a specified pattern: hg remove --exclude {{pattern}} Recursively remove sub-repositories: hg remove --subrepos Remove files from the repository that have been physically removed: hg remove --after
hg root Display the root location of a Hg repository. More information: https://www.mercurial-scm.org/doc/hg.1.html#root. Display the root location of the current repository: hg root Display the root location of the specified repository: hg root --cwd {{path/to/directory}}
hg serve Start a standalone Mercurial web server for browsing repositories. More information: https://www.mercurial-scm.org/doc/hg.1.html#serve. Start a web server instance: hg serve Start a web server instance on the specified port: hg serve --port {{port}} Start a web server instance on the specified listening address: hg serve --address {{address}} Start a web server instance with a specific identifier: hg serve --name {{name}} Start a web server instance using the specified theme (see the templates directory): hg serve --style {{style}}
hg status Show files that have changed in the working directory. More information: https://www.mercurial-scm.org/doc/hg.1.html#status. Display the status of changed files: hg status Display only modified files: hg status --modified Display only added files: hg status --added Display only removed files: hg status --removed Display only deleted (but tracked) files: hg status --deleted Display changes in the working directory compared to a specified changeset: hg status --rev {{revision}} Display only files matching a specified glob pattern: hg status --include {{pattern}}
hg update Update the working directory to a specified changeset. More information: https://www.mercurial-scm.org/doc/hg.1.html#update. Update to the tip of the current branch: hg update Update to the specified revision: hg update --rev {{revision}} Update and discard uncommitted changes: hg update --clean Update to the last commit matching a specified date: hg update --date {{dd-mm-yyyy}}
highlight Outputs syntax-highlighted source code to a variety of formats. More information: http://www.andre-simon.de/doku/highlight/highlight.php. Produce a complete HTML document from a source code file: highlight --out-format={{html}} --style {{theme_name}} --syntax {{language}} {{path/to/source_code}} Produce an HTML fragment, suitable for inclusion in a larger document: highlight --out-format={{html}} --fragment --syntax {{language}} {{source_file}} Inline the CSS styling in every tag: highlight --out-format={{html}} --inline-css --syntax {{language}} {{source_file}} List all supported languages, themes, or plugins: highlight --list-scripts {{langs|themes|plugins}}
history expansion Reuse and expand the shell history in sh, bash, zsh, rbash and ksh. More information: https://www.gnu.org/software/bash/manual/html_node/History-Interaction. Run the previous command as root (!! is replaced by the previous command): sudo !! Run a command with the last argument of the previous command: {{command}} !$ Run a command with the first argument of the previous command: {{command}} !^ Run the Nth command of the history: !{{n}} Run the command n lines back in the history: !
history Command-line history. More information: https://www.gnu.org/software/bash/manual/html_node/Bash-History-Builtins.html. Display the commands history list with line numbers: history Display the last 20 commands (in zsh it displays all commands starting from the 20th): history {{20}} Clear the commands history list (only for current bash shell): history -c Overwrite history file with history of current bash shell (often combined with history -c to purge history): history -w Delete the history entry at the specified offset: history -d {{offset}}
hive CLI tool for Apache Hive. More information: https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Cli. Start a Hive interactive shell: hive Run HiveQL: hive -e "{{hiveql_query}}" Run a HiveQL file with a variable substitution: hive --define {{key}}={{value}} -f {{path/to/file.sql}} Run a HiveQL with HiveConfig (e.g. mapred.reduce.tasks=32): hive --hiveconf {{conf_name}}={{conf_value}}
hledger A plain text accounting software for the command-line. More information: https://hledger.org. Add transactions to your journal interactively: hledger add Show the account hierarchy, using a specific journal file: hledger --file {{path/to/file.journal}} accounts --tree Show a monthly income statement: hledger incomestatement --monthly --depth 2 Print the amount of cash spent on food: hledger print assets:cash | hledger -f- -I balance expenses:food --depth 2
hn Command-line interface for Hacker News. More information: https://github.com/rafaelrinaldi/hn-cli. View stories on Hacker News: hn View number of stories on Hacker News: hn --limit {{number}} View stories on Hacker News, and keep the list open after selecting a link: hn --keep-open View stories on Hacker News sorted by submission date: hn --latest
holehe Holehe checks if an email is attached to an account on sites like Twitter, Instagram, Imgur and over 120 others. More information: https://github.com/megadose/holehe#-cli-example. Show status across all supported websites for the specified email address: holehe {{username@example.org}} Show status for only sites where the specified email address is in use: holehe {{username@example.org}} --only-used
home-manager Manage a user environment using Nix. More information: https://github.com/rycee/home-manager. Activate the configuration defined in ~/.config/nixpkgs/home.nix: home-manager build Activate the configuration and switch to it: home-manager switch
host Lookup Domain Name Server. More information: https://manned.org/host. Lookup A, AAAA, and MX records of a domain: host {{domain}} Lookup a field (CNAME, TXT,…) of a domain: host -t {{field}} {{domain}} Reverse lookup an IP: host {{ip_address}} Specify an alternate DNS server to query: host {{domain}} {{8.8.8.8}}
hostapd Start an access point using a wireless interface. More information: https://w1.fi/hostapd/. Start an access point: sudo hostapd {{path/to/hostapd.conf}} Start an access point, forking into the background: sudo hostapd -B {{path/to/hostapd.conf}}
hostess Manage the /etc/hosts file. More information: https://github.com/cbednarski/hostess. List domains, target IP addresses and on/off status: hostess list Add a domain pointing to your machine to your hosts file: hostess add {{local.example.com}} {{127.0.0.1}} Remove a domain from your hosts file: hostess del {{local.example.com}} Disable a domain (but don’t remove it): hostess off {{local.example.com}}
hostid Prints the numeric identifier for the current host (not necessarily the IP address). More information: https://www.gnu.org/software/coreutils/hostid. Display the numeric identifier for the current host in hexadecimal: hostid
hostname Show or set the system’s host name. More information: https://manned.org/hostname. Show current host name: hostname Show the network address of the host name: hostname -i Show all network addresses of the host: hostname -I Show the FQDN (Fully Qualified Domain Name): hostname --fqdn Set current host name: hostname {{new_hostname}}
hping This command is an alias of hping3. More information: https://github.com/antirez/hping. View documentation for the original command: tldr hping3
hping3 Advanced ping utility which supports protocols such TCP, UDP, and raw IP. Best run with elevated privileges. More information: https://github.com/antirez/hping. Ping a destination with 4 ICMP ping requests: hping3 --icmp --count {{4}} {{ip_or_hostname}} Ping an IP address over UDP on port 80: hping3 --udp --destport {{80}} --syn {{ip_or_hostname}} Scan TCP port 80, scanning from the specific local source port 5090: hping3 --verbose --syn --destport {{80}} --baseport {{5090}} {{ip_or_hostname}} Traceroute using a TCP scan to a specific destination port: hping3 --traceroute --verbose --syn --destport {{80}} {{ip_or_hostname}}
hr Print a horizontal rule in the terminal. More information: https://github.com/LuRsT/hr. Print a horizontal rule: hr Print a horizontal rule with a custom string: hr {{string}} Print a multiline horizontal rule: hr {{string_a}} {{string_b}} {{string_c}}
hsd-cli The command-line REST tool for the Handshake blockchain. More information: https://handshake.org. Retrieve information about the current server: hsd-cli info Broadcast a local transaction: hsd-cli broadcast {{transaction_hex}} Retrieve a mempool snapshot: hsd-cli mempool View a transaction by address or hash: hsd-cli tx {{address_or_hash}} View a coin by its hash index or address: hsd-cli coin {{hash_index_or_address}} View a block by height or hash: hsd-cli block {{height_or_hash}} Reset the chain to the specified block: hsd-cli reset {{height_or_hash}}
hsw-cli The command-line REST tool for the Handshake wallet. More information: https://github.com/handshake-org/hs-client. Unlock the current wallet (timeout in seconds): hsw-cli unlock {{passphrase}} {{timeout}} Lock the current wallet: hsw-cli lock View the current wallet’s details: hsw-cli get View the current wallet’s balance: hsw-cli balance View the current wallet’s transaction history: hsw-cli history Send a transaction with the specified coin amount to an address: hsw-cli send {{address}} {{1.05}} View the current wallet’s pending transactions: hsw-cli pending
html5validator Validate HTML5. More information: https://github.com/svenkreiss/html5validator. Validate a specific file: html5validator {{path/to/file}} Validate all HTML files in a specific directory: html5validator --root {{path/to/directory}} Show warnings as well as errors: html5validator --show-warnings {{path/to/file}} Match multiple files using a glob pattern: html5validator --root {{path/to/directory}} --match "{{*.html *.php}}" Ignore specific directory names: html5validator --root {{path/to/directory}} --blacklist "{{node_modules vendor}}" Output the results in a specific format: html5validator --format {{gnu|xml|json|text}} {{path/to/file}} Output the log at a specific verbosity level: html5validator --root {{path/to/directory}} --log {{debug|info|warning}}
htop Display dynamic real-time information about running processes. An enhanced version of top. More information: https://htop.dev/. Start htop: htop Start htop displaying processes owned by a specific user: htop --user {{username}} Sort processes by a specified sort_item (use htop --sort help for available options): htop --sort {{sort_item}} Start htop with the specified delay between updates, in tenths of a second (i.e. 50 = 5 seconds): htop --delay 50 See interactive commands while running htop: ?
htpasswd Create and manage htpasswd files to protect web server directories using basic authentication. More information: https://httpd.apache.org/docs/current/programs/htpasswd.html. Create/overwrite htpasswd file: htpasswd -c {{path/to/file}} {{username}} Add user to htpasswd file or update existing user: htpasswd {{path/to/file}} {{username}} Add user to htpasswd file in batch mode without an interactive password prompt (for script usage): htpasswd -b {{path/to/file}} {{username}} {{password}} Delete user from htpasswd file: htpasswd -D {{path/to/file}} {{username}} Verify user password: htpasswd -v {{path/to/file}} {{username}}
http HTTPie: HTTP client, aims to be easier to use than cURL. More information: https://httpie.org. Download a URL to a file: http --download {{example.org}} Send form-encoded data: http --form {{example.org}} {{name='bob'}} {{profile_picture@'bob.png'}} Send JSON object: http {{example.org}} {{name='bob'}} Specify an HTTP method: http {{HEAD}} {{example.org}} Include an extra header: http {{example.org}} {{X-MyHeader:123}} Pass a username and password for server authentication: http --auth {{username:password}} {{example.org}} Specify raw request body via stdin: cat {{data.
http-server Simple static HTTP server to serve static files. More information: https://github.com/http-party/http-server. Start an HTTP server listening on the default port to serve the current directory: http-server Start an HTTP server on a specific port to serve a specific directory: http-server {{path/to/directory}} --port {{port}} Start an HTTP server using basic authentication: http-server --username {{username}} --password {{password}} Start an HTTP server with directory listings disabled: http-server -d {{false}} Start an HTTPS server on the default port using the specified certificate: http-server --ssl --cert {{path/to/cert.
http-server-upload Zero-configuration command-line HTTP server which provides a lightweight interface to upload files. More information: https://github.com/crycode-de/http-server-upload. Start an HTTP server on the default port to upload files to the current directory: http-server-upload Start an HTTP server with the specified maximum allowed file size for uploads in MiB (defaults to 200 MiB): MAX_FILE_SIZE={{size_in_megabytes}} http-server-upload Start an HTTP server on a specific port to upload files to the current directory: PORT={{port}} http-server-upload
httpflow A command-line utility to capture and dump HTTP streams. More information: https://github.com/six-ddc/httpflow. Capture traffic on all interfaces: httpflow -i {{any}} Use a bpf-style capture to filter the results: httpflow {{host httpbin.org or host baidu.com}} Use a regular expression to filter requests by URLs: httpflow -u '{{regular_expression}}' Read packets from pcap format binary file: httpflow -r {{out.cap}} Write the output to a directory: httpflow -w {{path/to/directory}}
httping Measure the latency and throughput of a web server. More information: https://manned.org/httping. Ping the specified URL: httping -g {{url}} Ping the web server on host and port: httping -h {{host}} -p {{port}} Ping the web server on host using a TLS connection: httping -l -g https://{{host}} Ping the web server on host using HTTP basic authentication: httping -g http://{{host}} -U {{username}} -P {{password}}
httprobe Take a list of domains and probe for working HTTP and HTTPS servers. More information: https://github.com/tomnomnom/httprobe. Probe a list of domains from a text file: cat {{input_file}} | httprobe Only check for HTTP if HTTPS is not working: cat {{input_file}} | httprobe --prefer-https Probe additional ports with a given protocol: cat {{input_file}} | httprobe -p {{https:2222}} Output all available options: httprobe --help
httpry A lightweight packet sniffer for displaying and logging HTTP traffic. It can be run in real-time displaying the traffic as it is parsed, or as a daemon process that logs to an output file. More information: http://dumpsterventures.com/jason/httpry/. Save output to a file: httpry -o {{path/to/file.log}} Listen on a specific interface and save output to a binary pcap format file: httpry {{eth0}} -b {{path/to/file.pcap}} Filter output by a comma-separated list of HTTP verbs: httpry -m {{get|post|put|head|options|delete|trace|connect|patch}}
hub A wrapper for Git that adds commands for working with GitHub-based projects. If set up as instructed by hub alias, one can use git to run hub commands. More information: https://hub.github.com. Clone a repository using its slug (owners can omit the username): hub clone {{username}}/{{repo_name}} Create a fork of the current repository (cloned from another user) under your GitHub profile: hub fork Push the current local branch to GitHub and create a PR for it in the original repository: hub push {{remote_name}} && hub pull-request
hugo Template-based static site generator. Uses modules, components, and themes. More information: https://gohugo.io. Create a new Hugo site: hugo new site {{path/to/site}} Create a new Hugo theme (themes may also be downloaded from https://themes.gohugo.io/): hugo new theme {{theme_name}} Create a new page: hugo new {{section_name}}/{{page_name}} Build a site to the ./public/ directory: hugo Build a site including pages that are marked as a “draft”: hugo --buildDrafts Build a site to a given directory: hugo --destination {{path/to/destination}}
hunspell Check spelling. More information: https://github.com/hunspell/hunspell. Check the spelling of a file: hunspell {{path/to/file}} Check the spelling of a file with the en_US dictionary: hunspell -d {{en_US}} {{path/to/file}} List misspelled words in a file: hunspell -l {{path/to/file}}
husky Native Git hooks made easy. More information: https://typicode.github.io/husky. Install Husky in the current directory: husky install Install Husky into a specific directory: husky install {{path/to/directory}} Set a specific command as a pre-push hook for Git: husky set {{.husky/pre-push}} "{{command}} {{command_arguments}}" Add a specific command to the current pre-commit hook: husky add {{.husky/pre-commit}} "{{command}} {{command_arguments}}" Uninstall Husky hooks from the current directory: husky uninstall Display help: husky
hx This command is an alias of helix. View documentation for the original command: tldr helix
hydra Online password guessing tool. Protocols supported include FTP, HTTP(S), SMTP, SNMP, XMPP, SSH, and more. More information: https://github.com/vanhauser-thc/thc-hydra. Start Hydra’s wizard: hydra-wizard Guess SSH credentials using a given username and a list of passwords: hydra -l {{username}} -P {{path/to/wordlist.txt}} {{host_ip}} {{ssh}} Guess HTTPS webform credentials using two specific lists of usernames and passwords (“https_post_request” can be like “username=^USER^&password=^PASS^”): hydra -L {{path/to/usernames.txt}} -P {{path/to/wordlist.txt}} {{host_ip}} {{https-post-form}} "{{url_without_host}}:{{https_post_request}}:{{login_failed_string}}" Guess FTP credentials using usernames and passwords lists, specifying the number of threads: hydra -L {{path/to/usernames.
hyperfine A command-line benchmarking tool. More information: https://github.com/sharkdp/hyperfine/. Run a basic benchmark, performing at least 10 runs: hyperfine '{{make}}' Run a comparative benchmark: hyperfine '{{make target1}}' '{{make target2}}' Change minimum number of benchmarking runs: hyperfine --min-runs {{7}} '{{make}}' Perform benchmark with warmup: hyperfine --warmup {{5}} '{{make}}' Run a command before each benchmark run (to clear caches, etc.): hyperfine --prepare '{{make clean}}' '{{make}}' Run a benchmark where a single parameter changes for each run: hyperfine --prepare '{{make clean}}' --parameter-scan {{num_threads}} {{1}} {{10}} '{{make -j {num_threads}}}'
ia Command-line tool to interact with archive.org. More information: https://archive.org/services/docs/api/internetarchive/cli.html. Configure ia with API keys (some functions won’t work without this step): ia configure Upload one or more items to archive.org: ia upload {{identifier}} {{path/to/file}} --metadata="{{mediatype:data}}" --metadata="{{title:example}}" Download one or more items from archive.org: ia download {{item}} Delete one or more items from archive.org: ia delete {{identifier}} {{file}} Search on archive.org, returning results as JSON: ia search '{{subject:"subject" collection:collection}}'
ibmcloud A command-line tool for managing IBM Cloud apps and services. More information: https://cloud.ibm.com/docs/cli?topic=cli-ibmcloud_cli. Update ibmcloud to the latest version: ibmcloud update Install the Cloud Foundry module for accessing Cloud Foundry services: ibmcloud cf install List all available IBM Cloud regions: ibmcloud regions Display ibmcloud version: ibmcloud version Display help: ibmcloud help Display help for a subcommand: ibmcloud help {{subcommand}}
ibmcloud login Log in to the IBM Cloud. More information: https://cloud.ibm.com/docs/cli?topic=cli-ibmcloud_cli#ibmcloud_login. Log in by using an interactive prompt: ibmcloud login Log in to a specific API endpoint (default is cloud.ibm.com): ibmcloud login -a {{api_endpoint}} Log in by providing username, password and the targeted region as parameters: ibmcloud login -u {{username}} -p {{password}} -r {{us-south}} Log in with an API key, passing it as an argument: ibmcloud login --apikey {{api_key_string}} Log in with an API key, passing it as a file: ibmcloud login --apikey @{{path/to/api_key_file}}
ical A Hirji/Islamic calendar and converter for the terminal. More information: https://manned.org/ical. Display the current month’s calendar: ical Convert a Gregorian date to a Hijri date: ical --gregorian {{yyyymmdd}} Convert a Hirji date to a Gregorian date: ical --hijri {{yyyymmdd}}
iconv Converts text from one encoding to another. More information: https://manned.org/iconv. Convert file to a specific encoding, and print to stdout: iconv -f {{from_encoding}} -t {{to_encoding}} {{input_file}} Convert file to the current locale’s encoding, and output to a file: iconv -f {{from_encoding}} {{input_file}} > {{output_file}} List supported encodings: iconv -l
id Display current user and group identity. More information: https://www.gnu.org/software/coreutils/id. Display current user’s ID (UID), group ID (GID) and groups to which they belong: id Display the current user identity as a number: id -u Display the current group identity as a number: id -g Display an arbitrary user’s ID (UID), group ID (GID) and groups to which they belong: id {{username}}
id3tag Tool for reading, writing, and manipulating ID3v1 and ID3v2 tags of MP3 files. More information: https://manned.org/id3tag. Set artist and title tag of an MP3 file: id3tag --artist={{artist}} --title={{title}} {{path/to/file.mp3}} Set album title of all MP3 files in the current directory: id3tag --album={{album}} {{*.mp3}} Get more help: id3tag --help
identify Command-line utility of Image Magick project to describe the format and characteristics of one or more image files. More information: https://imagemagick.org/script/identify.php. Describe the format and basic characteristics of an image: identify {{path/to/image}} Describe the format and verbose characteristics of an image: identify -verbose {{path/to/image}} Collect dimensions of all JPEG files under current directory: identify -format "%f,%w,%h\n" *.{{jpg}} > {{path/to/filelist.csv}}
idnits Check internet-drafts for submission nits. Looks for violations of Section 2.1 and 2.2 of the requirements listed on https://www.ietf.org/id-info/checklist. More information: https://tools.ietf.org/tools/idnits/. Check a file for nits: idnits {{path/to/file.txt}} Count nits without displaying them: idnits --nitcount {{path/to/file.txt}} Show extra information about offending lines: idnits --verbose {{path/to/file.txt}} Expect the specified year in the boilerplate instead of the current year: idnits --year {{2021}} {{path/to/file.txt}} Assume the document is of the specified status: idnits --doctype {{standard|informational|experimental|bcp|ps|ds}} {{path/to/file.
iex IEx is the interactive shell for Elixir. More information: https://hexdocs.pm/iex. Start an interactive session: iex Start a session that remembers history: iex --erl "-kernel shell_history enabled" Start and load Mix project files: iex -S mix
if Performs conditional processing in shell scripts. See also: test, [. More information: https://www.gnu.org/software/bash/manual/bash.html#Conditional-Constructs. Execute the specified commands if the condition command’s exit status is zero: if {{condition_command}}; then {{echo "Condition is true"}}; fi Execute the specified commands if the condition command’s exit status is not zero: if ! {{condition_command}}; then {{echo "Condition is true"}}; fi Execute the first specified commands if the condition command’s exit status is zero otherwise execute the second specified commands: if {{condition_command}}; then {{echo "Condition is true"}}; else {{echo "Condition is false"}}; fi
ifconfig Network Interface Configurator. More information: https://net-tools.sourceforge.io/man/ifconfig.8.html. View network settings of an Ethernet adapter: ifconfig eth0 Display details of all interfaces, including disabled interfaces: ifconfig -a Disable eth0 interface: ifconfig eth0 down Enable eth0 interface: ifconfig eth0 up Assign IP address to eth0 interface: ifconfig eth0 {{ip_address}}
ignite A CLI for React Native boilerplates, plugins, generators, and more. More information: https://infinite.red/ignite. Create a new React Native project: ignite new {{project_name}} Generate file from a plugin: ignite generate {{plugin_name}} {{path/to/file}} Add an Ignite plugin to the project: ignite add {{plugin_name}} Remove an Ignite plugin from the project: ignite remove {{plugin_name}}
imapsync Email IMAP tool for syncing, copying and migrating email mailboxes between two IMAP servers, one way, and without duplicates. More information: https://imapsync.lamiral.info. Synchronize IMAP account between host1 and host2: imapsync --host1 {{host1}} --user1 {{user1}} --password1 {{secret1}} --host2 {{host2}} --user2 {{user2}} --password2 {{secret2}}
img2pdf Command-line lossless converter of raster images to PDF. More information: https://gitlab.mister-muffin.de/josch/img2pdf. Convert multiple images to a single PDF, each image being on its own page: img2pdf {{path/to/image1.jpg}} {{path/to/image2.jpg}} --output {{path/to/file.pdf}} Convert only the first frame of a multi-frame image to PDF: img2pdf {{path/to/file.gif}} --first-frame-only --output {{path/to/file.pdf}} Auto orient the image, use a page size of A4 in landscape mode, and set a border of 2cm horizontally and 5.1cm vertically: img2pdf {{path/to/file.
imgcat Display images on the command-line. Requires a compatible terminal such as iTerm2. More information: https://github.com/danielgatis/imgcat. Display an image on the command-line: imgcat {{path/to/file}}
import Capture some or all of an X server screen, and save the image to a file. Part of the ImageMagick library. More information: https://imagemagick.org/script/import.php. Capture the entire X server screen in the PostScript image format: import -window root {{output.postscript}} Capture contents of a remote X server screen in the PNG format: import -window root -display {{remote_host}}:{{screen}}.{{display}} {{output.png}} Capture a specific window, given its ID as displayed by xwininfo, into the JPEG format: import -window {{window_id}} {{output.
in-toto-record Create a signed link metadata file to provide evidence for supply chain steps. More information: https://in-toto.readthedocs.io/en/latest/command-line-tools/in-toto-record.html. Start the record (creates a preliminary link file): in-toto-record start -n {{edit-files}} -k {{path/to/key_file}} -m {{.}} Stop the record (expects a preliminary link file): in-toto-record stop -n {{edit-files}} -k {{path/to/key_file}} -p {{.}}
in-toto-run Generating link metadata while carrying out a supply chain step. More information: https://in-toto.readthedocs.io/en/latest/command-line-tools/in-toto-run.html. Tag a git repo and signing the resulting link file: in-toto-run -n {{tag}} --products {{.}} -k {{key_file}} -- {{git tag v1.0}} Create a tarball, storing files as materials and the tarball as product: in-toto-run -n {{package}} -m {{project}} -p {{project.tar.gz}} -- {{tar czf project.tar.gz project}} Generate signed attestations for review work: in-toto-run -n {{review}} -k {{key_file}} -m {{document.
in-toto-sign Sign in-toto link or layout metadata or verify their signatures. More information: https://in-toto.readthedocs.io/en/latest/command-line-tools/in-toto-sign.html. Sign ‘unsigned.layout’ with two keys and write it to ‘root.layout’: in-toto-sign -f {{unsigned.layout}} -k {{priv_key1}} {{priv_key2}} -o {{root.layout}} Replace signature in link file and write to default filename: in-toto-sign -f {{package.2f89b927.link}} -k {{priv_key}} Verify a layout signed with 3 keys: in-toto-sign -f {{root.layout}} -k {{pub_key0}} {{pub_key1}} {{pub_key2}} --verify Sign a layout with the default GPG key in default GPG keyring: in-toto-sign -f {{root.
in2csv Converts various tabular data formats into CSV. Included in csvkit. More information: https://csvkit.readthedocs.io/en/latest/scripts/in2csv.html. Convert an XLS file to CSV: in2csv {{data.xls}} Convert a DBF file to a CSV file: in2csv {{data.dbf}} > {{data.csv}} Convert a specific sheet from an XLSX file to CSV: in2csv --sheet={{sheet_name}} {{data.xlsx}} Pipe a JSON file to in2csv: cat {{data.json}} | in2csv -f json > {{data.csv}}
indent Change the appearance of a C/C++ program by inserting or deleting whitespace. More information: https://www.gnu.org/software/indent/. Format C/C++ source according to the Linux style guide, automatically back up the original files, and replace with the indented versions: indent --linux-style {{path/to/source.c}} {{path/to/another_source.c}} Format C/C++ source according to the GNU style, saving the indented version to a different file: indent --gnu-style {{path/to/source.c}} -o {{path/to/indented_source.c}} Format C/C++ source according to the style of Kernighan & Ritchie (K&R), no tabs, 3 spaces per indent, and wrap lines at 120 characters: indent --k-and-r-style --indent-level3 --no-tabs --line-length120 {{path/to/source.
infection A mutation testing framework for PHP. More information: https://infection.github.io. Analyze code using the configuration file (or create one if it does not exist): infection Use a specific number of threads: infection --threads {{number_of_threads}} Specify a minimum Mutation Score Indicator (MSI): infection --min-msi {{percentage}} Specify a minimum covered code MSI: infection --min-covered-msi {{percentage}} Use a specific test framework (defaults to PHPUnit): infection --test-framework {{phpunit|phpspec}} Only mutate lines of code that are covered by tests: infection --only-covered
influx InfluxDB command-line client. More information: https://docs.influxdata.com/influxdb/v1.7/tools/shell/. Connect to an InfluxDB running on localhost with no credentials: influx Connect with a specific username (will prompt for a password): influx -username {{username}} -password "" Connect to a specific host: influx -host {{hostname}} Use a specific database: influx -database {{database_name}} Execute a given command: influx -execute "{{influxql_command}}" Return output in a specific format: influx -execute "{{influxql_command}}" -format {{json|csv|column}}
info Reads documentation stored in the info format. More information: https://en.wikipedia.org/wiki/Info_(Unix). Start reading top-level directory menu: info Start reading at given menu item node from top-level directory: info {{menu_item}} Start reading at second menu item within first menu item manual: info {{first_menu_item}} {{second_menu_item}}
initdb Create a PostgreSQL database on disk. More information: https://www.postgresql.org/docs/9.5/app-initdb.html. Create a database at /usr/local/var/postgres: initdb -D /usr/local/var/postgres
inkmake GNU Makefile-style SVG exporting using Inkscape’s backend. More information: https://github.com/wader/inkmake. Export an SVG file executing the specified Inkfile: inkmake {{path/to/Inkfile}} Execute an Inkfile and show detailed information: inkmake --verbose {{path/to/Inkfile}} Execute an Inkfile, specifying SVG input file(s) and an output file: inkmake --svg {{path/to/file.svg}} --out {{path/to/output_image}} {{path/to/Inkfile}} Specify a custom Inkscape binary to use as the backend: inkmake --inkscape {{/Applications/Inkscape.app/Contents/Resources/bin/inkscape}} {{path/to/Inkfile}} Display help: inkmake --help
inkscape An SVG (Scalable Vector Graphics) editing program. For Inkscape versions up to 0.92.x, use -e instead of -o. More information: https://inkscape.org. Open an SVG file in the Inkscape GUI: inkscape {{filename.svg}} Export an SVG file into a bitmap with the default format (PNG) and the default resolution (96 DPI): inkscape {{filename.svg}} -o {{filename.png}} Export an SVG file into a bitmap of 600x400 pixels (aspect ratio distortion may occur): inkscape {{filename.
inkview Inkscape graphical SVG previewer. Also functions as a slideshow viewer. More information: http://wiki.inkscape.org/wiki/index.php/Inkview. Preview an SVG: inkview {{path/to/file.svg}} Preview multiple SVGs (use arrow keys to navigate): inkview {{path/to/file_a.svg}} {{path/to/file_b.svg}} {{path/to/file_c.svg}}
install Copy files and set attributes. Copy files (often executable) to a system location like /usr/local/bin, give them the appropriate permissions/ownership. More information: https://www.gnu.org/software/coreutils/install. Copy files to the destination: install {{path/to/source_file1 path/to/source_file2 ...}} {{path/to/destination}} Copy files to the destination, setting their ownership: install --owner {{user}} {{path/to/source_file1 path/to/source_file2 ...}} {{path/to/destination}} Copy files to the destination, setting their group ownership: install --group {{user}} {{path/to/source_file1 path/to/source_file2 ...}} {{path/to/destination}} Copy files to the destination, setting their mode: install --mode {{+x}} {{path/to/source_file1 path/to/source_file2 .
install-tl TeX Live cross-platform installer. More information: https://tug.org/texlive/. Start the text-based installer (default on Unix systems): install-tl -no-gui Start the GUI installer (default on macOS and Windows, requires Tcl/Tk): install-tl -gui Install TeX Live as defined in a specific profile file: install-tl -profile {{path/to/texlive.profile}} Start the installer with the settings from a specific profile file: install-tl -init-from-file {{path/to/texlive.profile}} Start the installer for installation on a portable device, like a USB stick: install-tl -portable
interdiff Show differences between two diff files. More information: http://freshmeat.sourceforge.net/projects/patchutils. Compare diff files: interdiff {{old_file}} {{new_file}} Compare diff files, ignoring whitespace: interdiff -w {{old_file}} {{new_file}}
ionic A framework to build hybrid mobile apps. More information: https://ionicframework.com/docs/cli. Create a new project: ionic start Start a local dev server for app dev/testing: ionic serve Generate new app component, directive, page, pipe, provider or tabs: ionic g {{page}} Show versions of Ionic, Cordova, environment, etc.: ionic info Run app on an Android/iOS device: ionic cordova run {{android|ios}} --device Check the health of an Ionic app: ionic doctor {{check}}
ionice Get or set program I/O scheduling class and priority. Scheduling classes: 1 (realtime), 2 (best-effort), 3 (idle). Priority levels: 0 (the highest) - 7 (the lowest). More information: https://manned.org/ionice. Set I/O scheduling class of a running process: ionice -c {{scheduling_class}} -p {{pid}} Run a command with custom I/O scheduling class and priority: ionice -c {{scheduling_class}} -n {{priority}} {{command}} Print the I/O scheduling class and priority of a running process: ionice -p {{pid}}
ioping Monitor I/O latency in real time. More information: https://github.com/koct9i/ioping. Show disk I/O latency using the default values and the current directory: ioping . Measure latency on /tmp using 10 requests of 1 megabyte each: ioping -c 10 -s 1M /tmp Measure disk seek rate on /dev/sdX: ioping -R {{/dev/sdX}} Measure disk sequential speed on /dev/sdX: ioping -RL {{/dev/sdX}}
iotop Display a table of current I/O usage by processes or threads. More information: https://manned.org/iotop. Start top-like I/O monitor: sudo iotop Show only processes or threads actually doing I/O: sudo iotop --only Show I/O usage in non-interactive mode: sudo iotop --batch Show only I/O usage of processes (default is to show all threads): sudo iotop --processes Show I/O usage of given PID(s): sudo iotop --pid={{PID}} Show I/O usage of a given user: sudo iotop --user={{user}}
ipaggcreate Produce aggregate statistics of TCP/IP dumps. More information: https://manned.org/ipaggcreate. Count the number of packets sent from each source address appearing in a pcap file: ipaggcreate --src {{path/to/file.pcap}} Group and count packets read from a network interface by IP packet length: ipaggcreate --interface {{eth0}} --length Count the number of bytes sent between each address pair appearing in a pcap file: ipaggcreate --address-pairs --bytes {{path/to/file.pcap}}
ipaggmanip Manipulate aggregate statistics produced by ipaggcreate. More information: https://manned.org/ipaggmanip. Combine labels equal in their high-order bits: ipaggmanip --prefix {{16}} {{path/to/file}} Remove labels with a count smaller than a given number of bytes and output a random sample of such labels: ipaggmanip --cut-smaller {{100}} --cull-labels {{5}} {{path/to/file}} Replace each label’s count with 1 if it is non-zero: ipaggmanip --posterize {{path/to/file}}
ipcs Display information about resources used in IPC (Inter-process Communication). More information: https://manned.org/ipcs. Specific information about the Message Queue which has the ID 32768: ipcs -qi 32768 General information about all the IPC: ipcs -a
iperf Measure network bandwidth between computers. More information: https://iperf.fr. Run on server: iperf -s Run on server using UDP mode and set server port to listen on 5001: iperf -u -s -p {{5001}} Run on client: iperf -c {{server_address}} Run on client every 2 seconds: iperf -c {{server_address}} -i {{2}} Run on client with 5 parallel threads: iperf -c {{server_address}} -P {{5}} Run on client using UDP mode: iperf -u -c {{server_address}} -p {{5001}}
iperf3 Traffic generator for testing network bandwidth. More information: https://iperf.fr. Run iperf3 as a server: iperf3 -s Run an iperf3 server on a specific port: iperf3 -s -p {{port}} Start bandwidth test: iperf3 -c {{server}} Run iperf3 in multiple parallel streams: iperf3 -c {{server}} -P {{streams}} Reverse direction of the test. Server sends data to the client: iperf3 -c {{server}} -R
ipfs Inter Planetary File System. A peer-to-peer hypermedia protocol. Aims to make the web more open. More information: https://ipfs.io. Add a file from local to the filesystem, pin it and print the relative hash: ipfs add {{path/to/file}} Add a directory and its files recursively from local to the filesystem and print the relative hash: ipfs add -r {{path/to/directory}} Save a remote file and give it a name but not pin it: ipfs get {{hash}} -o {{path/to/file}}
ipsumdump Summarise TCP/IP dumps into a human and machine readable ASCII format. More information: https://manned.org/ipsumdump. Print the source and destination IP addresses of all packets in a pcap file: ipsumdump --src --dst {{path/to/file.pcap}} Print the timestamps, source address, source port, destination address, destination port and protocol of all packets read from a given network interface: ipsumdump --interface {{eth0}} -tsSdDp Print the anonymised source address, anonymised destination address, and IP packet length of all packets in a pcap file: ipsumdump --src --dst --length --anonymize {{path/to/file.
IPython A Python shell with automatic history, dynamic object introspection, easier configuration, command completion, access to the system shell and more. More information: https://ipython.readthedocs.io. Start a REPL (interactive shell): ipython Enter an interactive IPython session after running a Python script: ipython -i {{script.py}} Create default IPython profile: ipython profile create Print the path to the directory for the default IPython profile: ipython locate profile Clear the IPython history database, deleting all entries: ipython history clear
irb Interactive Ruby shell. Evaluate Ruby code read from stdin. More information: https://docs.ruby-lang.org/en/master/IRB.html. Start the interactive shell: irb
irssi Text based IRC client. More information: https://irssi.org. Open Irssi and connect to a server with a nickname: irssi -n {{nickname}} -c {{irc.example.com}} Open Irssi and connect with a specific server on a given port: irssi -c {{irc.example.com}} -p {{port}} View the help: irssi --help Join a channel: /join {{#channelname}} Change active window (starts at 1): /win {{window_number}} Exit the application cleanly and quitting any server(s): /quit
is-up Check whether a website is up or down. More information: https://github.com/sindresorhus/is-up-cli. Check the status of the specified website: is-up {{example.com}}
isisdl A downloading utility for ISIS of TU-Berlin. Download all your files and videos from ISIS. More information: https://github.com/Emily3403/isisdl. Start the synchronization process: isisdl Limit the download rate to 20 MiB/s and download with 5 threads: isisdl --download-rate {{20}} --max-num-threads {{5}} Run the initialization configuration wizard: isisdl --init Run the additional configuration wizard: isisdl --config Initiate a full synchronization of the database and compute the checksum of every file: isisdl --sync
iverilog Preprocesses and compiles Verilog HDL (IEEE-1364) code into executable programs for simulation. More information: https://github.com/steveicarus/iverilog. Compile a source file into an executable: iverilog {{path/to/source.v}} -o {{path/to/executable}} Compile a source file into an executable while displaying all warnings: iverilog {{path/to/source.v}} -Wall -o {{path/to/executable}} Compile and run explicitly using the VVP runtime: iverilog -o {{path/to/executable}} -tvvp {{path/to/source.v}} Compile using Verilog library files from a different path: iverilog {{path/to/source.v}} -o {{path/to/executable}} -I{{path/to/library_directory}}
ivpn Command-line interface for the IVPN client. More information: https://www.ivpn.net. Print the current state of IVPN, including the connection and firewall status: ivpn status Print a list of available servers to connect to: ivpn servers
jadx Dex to Java decompiler. Produces Java source code from Android Dex and APK files. More information: https://github.com/skylot/jadx. Decompile a Dex file into a directory: jadx {{path/to/file}} Decompile a Dex file into a specific directory: jadx --output-dir {{path/to/directory}} {{path/to/file}}
jar Java applications/libraries packager. More information: https://docs.oracle.com/javase/tutorial/deployment/jar/basicsindex.html. Recursively archive all files in the current directory into a .jar file: jar cf {{file.jar}} * Unzip .jar/.war file to the current directory: jar -xvf {{file.jar}} List a .jar/.war file content: jar tf {{path/to/file.jar}} List a .jar/.war file content with verbose output: jar tvf {{path/to/file.jar}}
jarsigner Sign and verify Java archive (JAR) files. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/jarsigner.html. Sign a JAR file: jarsigner {{path/to/file.jar}} {{keystore_alias}} Sign a JAR file with a specific algorithm: jarsigner -sigalg {{algorithm}} {{path/to/file.jar}} {{keystore_alias}} Verify the signature of a JAR file: jarsigner -verify {{path/to/file.jar}}
java Java application launcher. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/java.html. Execute a java .class file that contains a main method by using just the class name: java {{classname}} Execute a java program and use additional third-party or user-defined classes: java -classpath {{path/to/classes1}}:{{path/to/classes2}}:. {{classname}} Execute a .jar program: java -jar {{filename.jar}} Execute a .jar program with debug waiting to connect on port 5005: java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:5005 -jar {{filename.jar}} Display JDK, JRE and HotSpot versions: java -version
javac Java application compiler. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/javac.html. Compile a .java file: javac {{file.java}} Compile several .java files: javac {{file1.java}} {{file2.java}} {{file3.java}} Compile all .java files in current directory: javac {{*.java}} Compile a .java file and place the resulting class file in a specific directory: javac -d {{path/to/directory}} {{file.java}}
javadoc Generate Java API documentation in HTML format from source code. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/javadoc.html. Generate documentation for Java source code and save the result in a directory: javadoc -d {{path/to/directory/}} {{path/to/java_source_code}} Generate documentation with a specific encoding: javadoc -docencoding {{UTF-8}} {{path/to/java_source_code}} Generate documentation excluding some packages: javadoc -exclude {{package_list}} {{path/to/java_source_code}}
javap Disassemble one or more class files and list them. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/javap.html. Disassemble and list a .class file: javap {{path/to/file.class}} Disassemble and list multiple .class files: javap {{path/to/file1.class path/to/file2.class ...}} Disassemble and list a built-in class file: javap java.{{package}}.{{class}} Display help: javap -help Display version: javap -version
jc A utility to convert the output of multiple commands to JSON. More information: https://github.com/kellyjonbrazil/jc. Convert command output to JSON via pipe: {{ifconfig}} | jc {{--ifconfig}} Convert command output to JSON via magic syntax: jc {{ifconfig}} Output pretty JSON via pipe: {{ifconfig}} | jc {{--ifconfig}} -p Output pretty JSON via magic syntax: jc -p {{ifconfig}}
jcal Display calendar information in the Jalali format, with the current day highlighted. More information: http://www.nongnu.org/jcal/. Display a calendar for the current month: jcal Display the previous, current, and next months: jcal -3 Display a calendar for a specific year (4 digits): jcal {{year}} Display a calendar for a specific month and year: jcal {{year}} {{month}}
jdeps Java class dependency analyzer. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/jdeps.html. Analyze the dependencies of a .jar or .class file: jdeps {{path/to/filename.class}} Print a summary of all dependencies of a specific .jar file: jdeps {{path/to/filename.jar}} -summary Print all class-level dependencies of a .jar file: jdeps {{path/to/filename.jar}} -verbose Output the results of the analysis in a DOT file into a specific directory: jdeps {{path/to/filename.jar}} -dotoutput {{path/to/directory}} Display help: jdeps --help
jdupes A powerful duplicate file finder and an enhanced fork of fdupes. More information: https://github.com/jbruchon/jdupes. Search a single directory: jdupes {{path/to/directory}} Search multiple directories: jdupes {{directory1}} {{directory2}} Search all directories recursively: jdupes --recurse {{path/to/directory}} Search directory recursively and let user choose files to preserve: jdupes --delete --recurse {{path/to/directory}} Search multiple directories and follow subdirectores under directory2, not directory1: jdupes {{directory1}} --recurse: {{directory2}} Search multiple directories and keep the directory order in result: jdupes -O {{directory1}} {{directory2}} {{directory3}}
jekyll A simple, blog-aware, static site generator. More information: https://jekyllrb.com/docs/usage/. Generate a development server that will run at http://localhost:4000/: jekyll serve Enable incremental regeneration: jekyll serve --incremental Enable verbose output: jekyll serve --verbose Generate the current directory into ./_site: jekyll build Clean the site (removes site output and cache directory) without building: jekyll clean
jello A command-line JSON processor using Python syntax. More information: https://github.com/kellyjonbrazil/jello. Pretty-print JSON or JSON-Lines data from stdin to stdout: cat {{file.json}} | jello Output a schema of JSON or JSON Lines data from stdin to stdout (useful for grep): cat {{file.json}} | jello -s Output all elements from arrays (or all the values from objects) in JSON or JSON-Lines data from stdin to stdout: cat {{file.json}} | jello -l
jenv Command-line tool to manage the “JAVA_HOME” environment variable. More information: https://www.jenv.be/. Add a Java version to jEnv: jenv add {{path/to/jdk_home}} Display the current JDK version used: jenv version Display all managed JDKs: jenv versions Set the global JDK version: jenv global {{java_version}} Set the JDK version for the current shell session: jenv shell {{java_version}} Enable a jEnv plugin: jenv enable-plugin {{plugin_name}}
jest A zero-configuration JavaScript testing platform. More information: https://jestjs.io. Run all available tests: jest Run the test suites from the given files: jest {{path/to/file1}} {{path/to/file2}} Run the test suites from files within the current and subdirectories, whose paths match the given regular expression: jest {{regular_expression1}} {{regular_expression2}} Run the tests whose names match the given regular expression: jest --testNamePattern {{regular_expression}} Run test suites related to a given source file: jest --findRelatedTests {{path/to/source_file.
jetifier Jetifier AndroidX transition tool in npm format, with a react-native compatible style. More information: https://github.com/mikehardy/jetifier. Migrate project dependencies to the AndroidX format: jetifier Migrate project dependencies from the AndroidX format: jetifier reverse
jf Interact with JFrog products like Artifactory, Xray, Distribution, Pipelines and Mission Control. More information: https://jfrog.com/help/r/jfrog-cli/usage. Add a new configuration: jf config add Show the current configuration: jf config show Search for artifacts within the given repository and directory: jf rt search --recursive {{repostiory_name}}/{{path}}/
jhat Java heap analysis tool. More information: https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jhat.html. Analyze a heap dump (from jmap), view via HTTP on port 7000: jhat {{dump_file.bin}} Analyze a heap dump, specifying an alternate port for the http server: jhat -p {{port}} {{dump_file.bin}} Analyze a dump letting jhat use up to 8 GB RAM (2-4x dump size recommended): jhat -J-mx8G {{dump_file.bin}}
jhipster Web application generator using either monolithic or microservices architecture. More information: https://www.jhipster.tech/. Generate a simple full-stack project (monolithic or microservices): jhipster Generate a simple frontend project: jhipster --skip-server Generate a simple backend project: jhipster --skip-client Apply latest JHipster updates to the project: jhipster upgrade Add a new entity to a generated project: jhipster entity {{entity_name}} Import a JDL file to configure your application (see: https://start.jhipster.tech/jdl-studio/): jhipster import-jdl {{first_file.jh second_file.jh .
jhsdb Attach to a Java process or launch a postmortem debugger to analyze the core dump from a crashed Java Virtual Machine. More information: https://manned.org/jhsdb. Print stack and locks information of a Java process: jhsdb jstack --pid {{pid}} Open a core dump in interactive debug mode: jhsdb clhsdb --core {{path/to/core_dump}} --exe {{path/to/jdk/bin/java}} Start a remote debug server: jhsdb debugd --pid {{pid}} --serverid {{optional_unique_id}} Connect to a process in interactive debug mode: jhsdb clhsdb --pid {{pid}}
jigsaw A Laravel-based static site builder for PHP. More information: https://jigsaw.tighten.co. Initialize a project: jigsaw init Initialize a project using a starter template: jigsaw init {{template_name}} Build the site for development: jigsaw build Preview the site from the “build_local” directory: jigsaw serve Build the site for production: jigsaw build production Preview the site from the “build_production” directory: jigsaw serve {{build_production}}
jmap Java memory map tool. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/jmap.html. Print shared object mappings for a Java process (output like pmap): jmap {{java_pid}} Print heap summary information: jmap -heap {{filename.jar}} {{java_pid}} Print histogram of heap usage by type: jmap -histo {{java_pid}} Dump contents of the heap into a binary file for analysis with jhat: jmap -dump:format=b,file={{path/to/file}} {{java_pid}} Dump live objects of the heap into a binary file for analysis with jhat: jmap -dump:live,format=b,file={{path/to/file}} {{java_pid}}
jmeter Open source java application designed for load testing functional behavior and measure performance. More information: https://jmeter.apache.org. Run a specific test plan in nongui mode: jmeter --nongui --testfile {{path/to/file}}.jmx Run a test plan in nongui mode using a specific log file: jmeter --nogui --testfile {{path/to/file}}.jmx --logfile {{path/to/logfile}}.jtl Run a test plan in nongui mode using a specific proxy: jmeter --nongui --testfile {{path/to/file}}.jmx --proxyHost {{127.0.0.1}} --proxyPort {{8888}} Run a test plan in nongui mode using a specific JMeter property: jmeter --jmeterproperty {{key}}='{{value}}' --nongui --testfile {{path/to/file}}.
jmtpfs FUSE-based filesystem for accessing MTP devices. More information: https://manned.org/jmtpfs. Mount an MTP device to a directory: jmtpfs {{path/to/directory}} Set mount options: jmtpfs -o {{allow_other,auto_unmount}} {{path/to/directory}} List available MTP devices: jmtpfs --listDevices If multiple devices are present, mount a specific device: jmtpfs -device={{bus_id}},{{device_id}} {{path/to/directory}} Unmount MTP device: fusermount -u {{path/to/directory}}
jobs Display status of jobs in the current session. More information: https://manned.org/jobs. Show status of all jobs: jobs Show status of a particular job: jobs %{{job_id}} Show status and process IDs of all jobs: jobs -l Show process IDs of all jobs: jobs -p
joe Joe’s own text editor. More information: https://joe-editor.sourceforge.io. Open a new file in JOE: joe Open a specific file: joe {{path/to/file}} Open a specific file, positioning the cursor at the specified line: joe +{{line}} {{path/to/file}} Open a specific file in read-only mode: joe -rdonly {{path/to/file}}
john Password cracker. More information: https://www.openwall.com/john/. Crack password hashes: john {{path/to/hashes.txt}} Show passwords cracked: john --show {{path/to/hashes.txt}} Display users’ cracked passwords by user identifier from multiple files: john --show --users={{user_ids}} {{path/to/hashes*}} {{path/to/other/hashes*}} Crack password hashes, using a custom wordlist: john --wordlist={{path/to/wordlist.txt}} {{path/to/hashes.txt}} List available hash formats: john --list=formats Crack password hashes, using a specific hash format: john --format={{md5crypt}} {{path/to/hashes.txt}} Crack password hashes, enabling word mangling rules: john --rules {{path/to/hashes.txt}} Restore an interrupted cracking session from a state file, e.
join Join lines of two sorted files on a common field. More information: https://www.gnu.org/software/coreutils/join. Join two files on the first (default) field: join {{file1}} {{file2}} Join two files using a comma (instead of a space) as the field separator: join -t {{','}} {{file1}} {{file2}} Join field3 of file1 with field1 of file2: join -1 {{3}} -2 {{1}} {{file1}} {{file2}} Produce a line for each unpairable line for file1: join -a {{1}} {{file1}} {{file2}}
josm Extensible OpenStreetMap editor for Java 8+. More information: https://josm.openstreetmap.de/. Launch JOSM: josm Launch JOSM in maximized mode: josm --maximize Launch JOSM and set a specific language: josm --language {{de}} Launch JOSM and reset all preferences to their default values: josm --reset-preferences Launch JOSM and download a specific bounding box: josm --download {{minlat,minlon,maxlat,maxlon}} Launch JOSM and download a specific bounding box as raw GPS: josm --downloadgps {{minlat,minlon,maxlat,maxlon}} Launch JOSM without plugins: josm --skip-plugins
jp2a Convert JPEG images to ASCII. More information: https://csl.name/jp2a/. Read JPEG image from a file and print in ASCII: jp2a {{path/to/image.jpeg}} Read JPEG image from a URL and print in ASCII: jp2a {{www.example.com/image.jpeg}} Colorize the ASCII output: jp2a --colors {{path/to/image.jpeg}} Specify characters to be used for the ASCII output: jp2a --chars='{{..-ooxx@@}}' {{path/to/image.jpeg}} Write the ASCII output into a file: jp2a --output={{path/to/output_file.txt}} {{path/to/image.jpeg}} Write the ASCII output in HTML file format, suitable for viewing in web browsers: jp2a --html --output={{path/to/output_file.
jpegoptim Optimise JPEG images. More information: https://github.com/tjko/jpegoptim. Optimise a set of JPEG images, retaining all associated data: jpegoptim {{image1.jpeg}} {{image2.jpeg}} {{imageN.jpeg}} Optimise JPEG images, stripping all non-essential data: jpegoptim --strip-all {{image1.jpeg}} {{image2.jpeg}} {{imageN.jpeg}} Force the output images to be progressive: jpegoptim --all-progressive {{image1.jpeg}} {{image2.jpeg}} {{imageN.jpeg}} Force the output images to have a fixed maximum filesize: jpegoptim --size={{250k}} {{image1.jpeg}} {{image2.jpeg}} {{imageN.jpeg}}
jps Show JVM process status of current user. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/jps.html. List all JVM processes: jps List all JVM processes with only PID: jps -q Display the arguments passed to the processes: jps -m Display the full package name of all processes: jps -l Display the arguments passed to the JVM: jps -v
jq A command-line JSON processor that uses a domain-specific language. More information: https://stedolan.github.io/jq/manual/. Execute a specific expression (print a colored and formatted json): {{cat path/to/file.json}} | jq '.' Execute a specific script: {{cat path/to/file.json}} | jq --from-file {{path/to/script.jq}} Pass specific arguments: {{cat path/to/file.json}} | jq {{--arg "name1" "value1" --arg "name2" "value2" ...}} '{{. + $ARGS.named}}' Print specific keys: {{cat path/to/file.json}} | jq '{{.key1, .key2, ...}}' Print specific array items: {{cat path/to/file.
jrnl A simple journal application for your command-line. More information: http://jrnl.sh. Insert a new entry with your editor: jrnl Quickly insert a new entry: jrnl {{today at 3am}}: {{title}}. {{content}} View the last ten entries: jrnl -n {{10}} View everything that happened from the start of last year to the start of last march: jrnl -from "{{last year}}" -until {{march}} Edit all entries tagged with “texas” and “history”: jrnl {{@texas}} -and {{@history}} --edit
json5 A command-line tool for converting JSON5 files to JSON. More information: https://json5.org. Convert JSON5 stdin to JSON stdout: echo {{input}} | json5 Convert a JSON5 file to JSON and output to stdout: json5 {{path/to/input_file.json5}} Convert a JSON5 file to the specified JSON file: json5 {{path/to/input_file.json5}} --out-file {{path/to/output_file.json}} Validate a JSON5 file: json5 {{path/to/input_file.json5}} --validate Specify the number of spaces to indent by (or “t” for tabs): json5 --space {{indent_amount}}
jstack Java stack trace tool. More information: https://manned.org/jstack. Print Java stack traces for all threads in a Java process: jstack {{java_pid}} Print mixed mode (Java/C++) stack traces for all threads in a Java process: jstack -m {{java_pid}} Print stack traces from Java core dump: jstack {{/usr/bin/java}} {{file.core}}
jtbl Utility to print JSON and JSON Lines data as a table in the terminal. More information: https://github.com/kellyjonbrazil/jtbl. Print a table from JSON or JSON Lines input: cat {{file.json}} | jtbl Print a table and specify the column width for wrapping: cat {{file.json}} | jtbl --cols={{width}} Print a table and truncate rows instead of wrapping: cat {{file.json}} | jtbl -t Print a table and don’t wrap or truncate rows: cat {{file.
julia A high-level, high-performance dynamic programming language for technical computing. More information: https://docs.julialang.org/en/v1/manual/getting-started/. Start a REPL (interactive shell): julia Execute a Julia program and exit: julia {{program.jl}} Execute a Julia program that takes arguments: julia {{program.jl}} {{arguments}} Evaluate a string containing Julia code: julia -e '{{julia_code}}' Evaluate a string of Julia code, passing arguments to it: julia -e '{{for x in ARGS; println(x); end}}' {{arguments}} Evaluate an expression and print the result: julia -E '{{(1 - cos(pi/4))/2}}'
jupyter Web application to create and share documents that contain code, visualizations and notes. Primarily used for data analysis, scientific computing and machine learning. More information: https://jupyter.org. Start a Jupyter notebook server in the current directory: jupyter notebook Open a specific Jupyter notebook: jupyter notebook {{example.ipynb}} Export a specific Jupyter notebook into another format: jupyter nbconvert --to {{html|markdown|pdf|script}} {{example.ipynb}} Start a server on a specific port: jupyter notebook --port={{port}} List currently running notebook servers: jupyter notebook list
jupytext Tool to convert Jupyter notebooks to plain text documents, and back again. More information: https://jupytext.readthedocs.io. Turn a notebook into a paired .ipynb/.py notebook: jupytext --set-formats ipynb,py {{notebook.ipynb}} Convert a notebook to a .py file: jupytext --to py {{notebook.ipynb}} Convert a .py file to a notebook with no outputs: jupytext --to notebook {{notebook.py}} Convert a .md file to a notebook and run it: jupytext --to notebook --execute {{notebook.md}} Update the input cells in a notebook and preserve outputs and metadata: jupytext --update --to notebook {{notebook.
just Save and run project-specific commands. More information: https://github.com/casey/just. Run a recipe specified in the justfile: just {{recipe}} Initialize new justfile in project root: just --init Edit justfile in the default editor: just -e List available recipes in the justfile: just -l Print justfile: just --dump
jwt Work with JSON Web Tokens (JWTs). Encryption algorithms available are HS256, HS384, HS512, RS256, RS384, RS512, ES256, ES384. More information: https://github.com/mike-engel/jwt-cli. Decode a JWT: jwt decode {{jwt_string}} Decode a JWT as a JSON string: jwt decode -j {{jwt_string}} Encode a JSON string to a JWT: jwt encode --alg {{HS256}} --secret {{1234567890}} '{{json_string}}' Encode key pair payload to JWT: jwt encode --alg {{HS256}} --secret {{1234567890}} -P key=value
k3d A wrapper to easily create k3s clusters inside Docker. More information: https://k3d.io. Create a cluster: k3d cluster create {{cluster_name}} Delete a cluster: k3d cluster delete {{cluster_name}} Create a new containerized k3s node: k3d node create {{node_name}} Import an image from Docker into a k3d cluster: k3d image import {{image_name}} --cluster {{cluster_name}} Create a new registry: k3d registry create {{registry_name}}
k6 Open source load testing tool and SaaS for engineering teams. More information: https://k6.io. Run load test locally: k6 run {{script.js}} Run load test locally with a given number of virtual users and duration: k6 run --vus {{10}} --duration {{30s}} {{script.js}} Run load test locally with a given environment variable: k6 run -e {{HOSTNAME=example.com}} {{script.js}} Run load test locally using InfluxDB to store results: k6 run --out influxdb={{http://localhost:8086/k6db}} {{script.js}} Run load test locally and discard response bodies (significantly faster): k6 run --discard-response-bodies {{script.
k8s-unused-secret-detector Command-line interface tool for detecting unused Kubernetes secrets. More information: https://github.com/dtan4/k8s-unused-secret-detector. Detect unused secrets: k8s-unused-secret-detector Detect unused secrets in a specific namespace: k8s-unused-secret-detector -n {{namespace}} Delete unused secrets in a specific namespace: k8s-unused-secret-detector -n {{namespace}} | kubectl delete secret -n {{namespace}}
k8sec Command-line interface tool to manage Kubernetes secrets. More information: https://github.com/dtan4/k8sec. List all secrets: k8sec list List a specific secret as a base64-encoded string: k8sec list {{secret_name}} --base64 Set a secret’s value: k8sec set {{secret_name}} {{key=value}} Set a base64-encoded value: k8sec set --base64 {{secret_name}} {{key=encoded_value}} Unset a secret: k8sec unset {{secret_name}} Load secrets from a file: k8sec load -f {{path/to/file}} {{secret_name}} Dump secrets to a file: k8sec dump -f {{path/to/file}} {{secret_name}}
kafkacat This command is an alias of kcat. View documentation for the original command: tldr kcat
kaggle Official CLI for Kaggle implemented in Python 3. More information: https://github.com/Kaggle/kaggle-api. View current configuration values: kaggle config view Download a specific file from a competition dataset: kaggle competitions download {{competition}} -f {{filename}}
kahlan A unit and Behaviour Driven Development test framework for PHP. More information: https://kahlan.github.io. Run all specifications in the “spec” directory: kahlan Run specifications using a specific configuration file: kahlan --config={{path/to/configuration_file}} Run specifications and output using a reporter: kahlan --reporter={{dot|bar|json|tap|verbose}} Run specifications with code coverage (detail can be between 0 and 4): kahlan --coverage={{detail_level}}
kak Kakoune is a mode-based code editor implementing the “multiple selections” paradigm. Data can be selected and simultaneously edited in different locations, using multiple selections; users can also connect to the same session for collaborative editing. More information: https://kakoune.org. Open a file and enter normal mode, to execute commands: kak {{path/to/file}} Enter insert mode from normal mode, to write text into the file: i Escape insert mode, to go back to normal mode: <Escape>
kate KDE’s advanced text editor. More information: https://kate-editor.org/. Open specific files: kate {{path/to/file1 path/to/file2 ...}} Open specific remote files: kate {{https://example.com/path/to/file1 https://example.com/path/to/file2 ...}} Create a new editor instance even if one is already open: kate --new Open a file with the cursor at the specific line: kate --line {{line_number}} {{path/to/file}} Open a file with the cursor at the specific line and column: kate --line {{line_number}} --column {{column_number}} {{path/to/file}} Create a file from stdin: cat {{path/to/file}} | kate --stdin
kcadm.sh Perform administration tasks. More information: https://www.keycloak.org/docs/latest/server_admin/#admin-cli. Start an authenticated session: kcadm.sh config credentials --server {{host}} --realm {{realm_name}} --user {{username}} --password {{password}} Create a user: kcadm.sh create users -s username={{username}} -r {{realm_name}} List all realms: kcadm.sh get realms Update a realm with JSON config: kcadm.sh update realms/{{realm_name}} -f {{path/to/file.json}}
kcat Apache Kafka producer and consumer tool. More information: https://github.com/edenhill/kcat. Consume messages starting with the newest offset: kcat -C -t {{topic}} -b {{brokers}} Consume messages starting with the oldest offset and exit after the last message is received: kcat -C -t {{topic}} -b {{brokers}} -o beginning -e Consume messages as a Kafka consumer group: kcat -G {{group_id}} {{topic}} -b {{brokers}} Publish message by reading from stdin: echo {{message}} | kcat -P -t {{topic}} -b {{brokers}}
kdeconnect-cli KDE’s Connect CLI. More information: https://kdeconnect.kde.org. List all devices: kdeconnect-cli --list-devices List available (paired and reachable) devices: kdeconnect-cli --list-available Request pairing with a specific device, specifying its ID: kdeconnect-cli --pair --device {{device_id}} Ring a device, specifying its name: kdeconnect-cli --ring --name "{{device_name}}" Share an URL or file with a paired device, specifying its ID: kdeconnect-cli --share {{url|path/to/file}} --device {{device_id}} Send an SMS with an optional attachment to a specific number: kdeconnect-cli --name "{{device_name}}" --send-sms "{{message}}" --destination {{phone_number}} --attachment {{path/to/file}}
kdenlive KDE’s non-linear video editor. More information: https://manned.org/kdenlive. Start the video editor: kdenlive Open a specific file: kdenlive {{path/to/file}}.kdenlive Set a specific path for an MLT environment: kdenlive --mlt-path {{path/to/directory}} Set a specific log level for an MLT environment: kdenlive --mlt-log {{verbose|debug}} Display help: kdenlive --help Display version: kdenlive --version
kdig Advanced DNS lookup utility. More information: https://www.knot-dns.cz/docs/latest/html/man_kdig.html. Lookup the IP(s) associated with a hostname (A records): kdig {{example.com}} Specify a specific DNS server to query (e.g. Google DNS): kdig {{example.com}} @{{8.8.8.8}} Query a specific DNS record type associated with a given domain name: kdig {{example.com}} {{A|AAAA|NS|SOA|DNSKEY|ANY}} Lookup the IP(s) associated with a hostname (A records) using DNS over TLS (DoT): kdig -d @{{8.8.8.8}} +tls-ca +tls-host={{dns.google}} {{example.com}} Lookup the IP(s) associated with a hostname (A records) using DNS over HTTPS (DoH): kdig -d @{{1.
keep-header Keep first line untouched by a command, passing it directly to stdout. More information: https://github.com/eBay/tsv-utils#keep-header. Sort a file and keep the first line at the top: keep-header {{path/to/file}} -- sort Output first line directly to stdout, passing the remainder of the file through the specified command: keep-header {{path/to/file}} -- {{command}} Read from stdin, sorting all except the first line: cat {{path/to/file}} | keep-header -- {{command}} Grep a file, keeping the first line regardless of the search pattern: keep-header {{path/to/file}} -- grep {{pattern}}
keepass2 A light-weight password manager. More information: https://keepass.info. Start KeePass 2, opening the most recently opened password database: keepass2 Start KeePass 2, opening a specific password database: keepass2 {{path/to/database.kbdx}} Use a specific key file to open a password database: keepass2 {{path/to/database.kbdx}} -keyfile:{{path/to/key/file.key}}
keepassxc-cli Command-line interface for KeepassXC. More information: https://manned.org/keepassxc-cli. Search entries: keepassxc-cli lookup {{path/to/database_file}} {{name}} List the contents of a folder: keepassxc-cli ls {{path/to/database_file}} {{/path/to/directory}} Add an entry with an auto-generated password: keepassxc-cli add --generate {{path/to/database_file}} {{entry_name}} Delete an entry: keepassxc-cli rm {{path/to/database_file}} {{entry_name}} Copy an entry’s password to the clipboard: keepassxc-cli clip {{path/to/database_file}} {{entry_name}} Copy a TOTP code to the clipboard: keepassxc-cli clip --totp {{path/to/database_file}} {{entry_name}} Generate a passphrase with 7 words: keepassxc-cli diceware --words {{7}}
keybase Key directory that maps social media identities to encryption keys in a publicly auditable manner. More information: https://keybase.io/docs/command_line. Follow another user: keybase follow {{username}} Add a new proof: keybase prove {{service}} {{service_username}} Sign a file: keybase sign --infile {{input_file}} --outfile {{output_file}} Verify a signed file: keybase verify --infile {{input_file}} --outfile {{output_file}} Encrypt a file: keybase encrypt --infile {{input_file}} --outfile {{output_file}} {{receiver}} Decrypt a file: keybase decrypt --infile {{input_file}} --outfile {{output_file}}
keychain Re-use ssh-agent and/or gpg-agent between logins. More information: http://funtoo.org/Keychain. Check for a running ssh-agent, and start one if needed: keychain Also check for gpg-agent: keychain --agents "{{gpg,ssh}}" List signatures of all active keys: keychain --list List fingerprints of all active keys: keychain --list-fp Add a timeout for identities added to the agent, in minutes: keychain --timeout {{minutes}}
keytool Keytool is a certificate management utility included with Java. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/keytool.html. Create a keystore: keytool -genkeypair -v -keystore {{path/to/file.keystore}} -alias {{key_name}} Change a keystore password: keytool -storepasswd -keystore {{path/to/file.keystore}} Change a key’s password inside a specific keystore: keytool -keypasswd -alias {{key_name}} -keystore {{path/to/file.keystore}}
khal A text-based calendar and scheduling application for the command-line. More information: https://lostpackets.de/khal. Start Khal on interactive mode: ikhal Print all events scheduled in personal calendar for the next seven days: khal list -a {{personal}} {{today}} {{7d}} Print all events scheduled not in personal calendar for tomorrow at 10:00: khal at -d {{personal}} {{tomorrow}} {{10:00}} Print a calendar with a list of events for the next three months: khal calendar
kill Sends a signal to a process, usually related to stopping the process. All signals except for SIGKILL and SIGSTOP can be intercepted by the process to perform a clean exit. More information: https://manned.org/kill. Terminate a program using the default SIGTERM (terminate) signal: kill {{process_id}} List available signal names (to be used without the SIG prefix): kill -l Terminate a background job: kill %{{job_id}} Terminate a program using the SIGHUP (hang up) signal.
killall Send kill signal to all instances of a process by name (must be exact name). All signals except SIGKILL and SIGSTOP can be intercepted by the process, allowing a clean exit. More information: https://manned.org/killall. Terminate a process using the default SIGTERM (terminate) signal: killall {{process_name}} [l]ist available signal names (to be used without the ‘SIG’ prefix): killall -l Interactively ask for confirmation before termination: killall -i {{process_name}} Terminate a process using the SIGINT (interrupt) signal, which is the same signal sent by pressing Ctrl + C: killall -INT {{process_name}}
kind Tool for running local Kubernetes clusters using Docker container “nodes”. Designed for testing Kubernetes itself, but may be used for local development or continuous integration. More information: https://github.com/kubernetes-sigs/kind. Create a local Kubernetes cluster: kind create cluster --name {{cluster_name}} Delete one or more clusters: kind delete clusters {{cluster_name}} Get details about clusters, nodes, or the kubeconfig: kind get {{clusters|nodes|kubeconfig}} Export the kubeconfig or the logs: kind export {{kubeconfig|logs}}
kinit Authenticate a principal with a Kerberos server to gain and cache a ticket. Note: A Kerberos principal can be either a user, service, or application. More information: https://web.mit.edu/kerberos/krb5-1.12/doc/user/user_commands/kinit.html. Authenticate a user and obtain a ticket-granting ticket: kinit {{username}} Renew a ticket-granting ticket: kinit -R Specify a lifetime for the ticket: kinit -l {{5h}} Specify a total renewable lifetime for the ticket: kinit -r {{1w}} Specify a different principal name to authenticate as: kinit -p {{principal@REALM}}
kismet A wireless network and device detector, sniffer, wardriving tool, and WIDS (wireless intrusion detection) framework. More information: https://www.kismetwireless.net/. Capture packets from a specific wireless interface: sudo kismet -c {{wlan0}} Monitor multiple channels on a wireless interface: sudo kismet -c {{wlan0,wlan1}} -m Capture packets and save them to a specific directory: sudo kismet -c {{wlan0}} -d {{path/to/output}} Start Kismet with a specific configuration file: sudo kismet -c {{wlan0}} -f {{path/to/config.conf}}
kitex Code generation tool provided by the Go RPC framework Kitex. Kitex accepts both thrift and protobuf IDLs, and supports generating a skeleton of a server side project. More information: https://www.cloudwego.io. Generate client codes when a project is in $GOPATH: kitex {{path/to/IDL_file.thrift}} Generate client codes when a project is not in $GOPATH: kitex -module {{github.com/xx-org/xx-name}} {{path/to/IDL_file.thrift}} Generate client codes with protobuf IDL: kitex -type protobuf {{path/to/IDL_file.proto}} Generate server codes: kitex -service {{svc_name}} {{path/to/IDL_file.
kitty A fast, feature-rich, GPU based terminal emulator. More information: https://sw.kovidgoyal.net/kitty/. Open a new terminal: kitty Open a terminal with the specified title for the window: kitty --title "{{title}}" Start the theme-chooser builtin: kitty +kitten themes Display an image in the terminal: kitty +kitten icat {{path/to/image}} Copy the contents of stdin to the clipboard: echo {{example}} | kitty +kitten clipboard
kiwi-ng KIWI NG is an OS image and appliance builder. More information: https://osinside.github.io/kiwi/. Build an appliance: kiwi-ng system build --description={{path/to/directory}} --target-dir={{path/to/directory}} Show build result of built appliance: kiwi-ng result list --target-dir={{path/to/directory}} Display help: kiwi-ng help Display version: kiwi-ng -v
knife Interact with a Chef server from a local Chef repo. More information: https://docs.chef.io/knife.html. Bootstrap a new node: knife bootstrap {{fqdn_or_ip}} List all registered nodes: knife node list Show a node: knife node show {{node_name}} Edit a node: knife node edit {{node_name}} Edit a role: knife role edit {{role_name}} View a data bag: knife data bag show {{data_bag_name}} {{data_bag_item}} Upload a local cookbook to the Chef server: knife cookbook upload {{cookbook_name}}
kompose A tool to convert docker-compose applications to Kubernetes. More information: https://github.com/kubernetes/kompose. Deploy a dockerized application to Kubernetes: kompose up -f {{docker-compose.yml}} Delete instantiated services/deployments from Kubernetes: kompose down -f {{docker-compose.yml}} Convert a docker-compose file into Kubernetes resources file: kompose convert -f {{docker-compose.yml}}
kool Build software development environments. More information: https://kool.dev/docs/. Create a project using a specific preset: kool create {{preset}} {{project_name}} Run a specific script defined in the kool.yml file in the current directory: kool run {{script}} Start/stop services in the current directory: kool {{start|stop}} Display status of the services in the current directory: kool status Update to the latest version: kool self-update Print the completion script for the specified shell: kool completion {{bash|fish|powershell|zsh}}
kops Create, destroy, upgrade and maintain Kubernetes clusters. More information: https://github.com/kubernetes/kops/. Create a cluster from the configuration specification: kops create cluster -f {{cluster_name.yaml}} Create a new ssh public key: kops create secret sshpublickey {{key_name}} -i {{~/.ssh/id_rsa.pub}} Export the cluster configuration to the ~/.kube/config file: kops export kubecfg {{cluster_name}} Get the cluster configuration as YAML: kops get cluster {{cluster_name}} -o yaml Delete a cluster: kops delete cluster {{cluster_name}} --yes
kosmorro Compute the ephemerides and the events for a given date, at a given position on Earth. More information: http://kosmorro.space. Get ephemerides for Paris, France: kosmorro --latitude={{48.7996}} --longitude={{2.3511}} Get ephemerides for Paris, France, in the UTC+2 timezone: kosmorro --latitude={{48.7996}} --longitude={{2.3511}} --timezone={{2}} Get ephemerides for Paris, France, on June 9th, 2020: kosmorro --latitude={{48.7996}} --longitude={{2.3511}} --date={{2020-06-09}} Generate a PDF (note: TeXLive must be installed): kosmorro --format={{pdf}} --output={{path/to/file.pdf}}
kotlin Kotlin application launcher. More information: https://kotlinlang.org. Run a jar file: kotlin {{filename.jar}} Display Kotlin and JVM version: kotlin -version
kotlinc Kotlin compiler. More information: https://kotlinlang.org/docs/command-line.html. Start a REPL (interactive shell): kotlinc Compile a Kotlin file: kotlinc {{path/to/file.kt}} Compile several Kotlin files: kotlinc {{path/to/file1.kt path/to/file2.kt ...}} Execute a specific Kotlin Script file: kotlinc -script {{path/to/file.kts}} Compile a Kotlin file into a self contained jar file with the Kotlin runtime library included: kotlinc {{path/to/file.kt}} -include-runtime -d {{path/to/file.jar}}
krunvm Create MicroVMs from OCI images. More information: https://github.com/containers/krunvm. Create MicroVM based on Fedora: krunvm create {{docker.io/fedora}} --cpus {{number_of_vcpus}} --mem {{memory_in_megabytes}} --name "{{name}}" Start a specific image: krunvm start "{{image_name}}" List images: krunvm list Change a specific image: krunvm changevm --cpus {{number_of_vcpus}} --mem {{memory_in_megabytes}} --name "{{new_vm_name}}" "{{current_vm_name}}" Delete a specific image: krunvm delete "{{image_name}}"
ksh Korn Shell, a Bash-compatible command-line interpreter. See also: histexpand. More information: http://kornshell.com. Start an interactive shell session: ksh Execute specific [c]ommands: ksh -c "{{echo 'ksh is executed'}}" Execute a specific script: ksh {{path/to/script.ksh}} Check a specific script for syntax errors without executing it: ksh -n {{path/to/script.ksh}} Execute a specific script, printing each command in the script before executing it: ksh -x {{path/to/script.ksh}}
kube-capacity Provide an overview of resource requests, limits, and utilization in a Kubernetes cluster. Combine the best parts of kubectl top and kubectl describe into a CLI focused on cluster resources. More information: https://github.com/robscott/kube-capacity. Output a list of nodes with the total CPU and Memory resource requests and limits: kube-capacity Include pods: kube-capacity -p Include utilization: kube-capacity -u
kube-fzf Shell commands for command-line fuzzy searching of Kubernetes Pods. See also kubectl for related commands. More information: https://github.com/thecasualcoder/kube-fzf. Get pod details (from current namespace): findpod Get pod details (from all namespaces): findpod -a Describe a pod: describepod Tail pod logs: tailpod Exec into a pod’s container: execpod {{shell_command}} Port-forward a pod: pfpod {{port_number}}
kubeadm Command-line interface for creating and managing Kubernetes clusters. More information: https://kubernetes.io/docs/reference/setup-tools/kubeadm. Create a Kubernetes master node: kubeadm init Bootstrap a Kubernetes worker node and join it to a cluster: kubeadm join --token {{token}} Create a new bootstrap token with a TTL of 12 hours: kubeadm token create --ttl {{12h0m0s}} Check if the Kubernetes cluster is upgradeable and which versions are available: kubeadm upgrade plan Upgrade Kubernetes cluster to a specified version: kubeadm upgrade apply {{version}}
kubectl Command-line interface for running commands against Kubernetes clusters. Some subcommands such as kubectl run have their own usage documentation. More information: https://kubernetes.io/docs/reference/kubectl/. List information about a resource with more details: kubectl get {{pod|service|deployment|ingress|...}} -o wide Update specified pod with the label ‘unhealthy’ and the value ’true’: kubectl label pods {{name}} unhealthy=true List all resources with different types: kubectl get all Display resource (CPU/Memory/Storage) usage of nodes or pods: kubectl top {{pod|node}}
kubectl delete Delete Kubernetes resources. More information: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#delete. Delete a specific pod: kubectl delete pod {{pod_name}} Delete a specific deployment: kubectl delete deployment {{deployment_name}} Delete a specific node: kubectl delete node {{node_name}} Delete all pods in a specified namespace: kubectl delete pods --all --namespace {{namespace}} Delete all deployments and services in a specified namespace: kubectl delete deployments,services --all --namespace {{namespace}} Delete all nodes: kubectl delete nodes --all Delete resources defined in a YAML manifest: kubectl delete --filename {{path/to/manifest.
kubectl describe Show details of Kubernetes objects and resources. More information: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#describe. Show details of pods in a namespace: kubectl describe pods -n {{namespace}} Show details of nodes in a namespace: kubectl describe nodes -n {{namespace}} Show the details of a specific pod in a namespace: kubectl describe pods {{pod_name}} -n {{namespace}} Show the details of a specific node in a namespace: kubectl describe nodes {{node_name}} -n {{namespace}} Show details of Kubernetes objects defined in a YAML manifest: kubectl describe -f {{path/to/manifest.
kubectl edit Edit Kubernetes resources. More information: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#edit. Edit a pod: kubectl edit pod/{{pod_name}} Edit a deployment: kubectl edit deployment/{{deployment_name}} Edit a service: kubectl edit svc/{{service_name}} Edit a resource using a specific editor: KUBE_EDITOR={{nano}} kubectl edit {{resource}}/{{resource_name}} Edit a resource in JSON format: kubectl edit {{resource}}/{{resource_name}} --output json
kubectl get Get Kubernetes objects and resources. More information: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#get. Get all namespaces in the current cluster: kubectl get namespaces Get nodes in a specified namespace: kubectl get nodes -n {{namespace}} Get pods in a specified namespace: kubectl get pods -n {{namespace}} Get deployments in a specified namespace: kubectl get deployments -n {{namespace}} Get services in a specified namespace: kubectl get services -n {{namespace}} Get all resources in a specified namespace: kubectl get all -n {{namespace}}
kubectl logs Show logs for containers in a pod. More information: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#logs. Show logs for a single-container pod: kubectl logs {{pod_name}} Show logs for a specified container in a pod: kubectl logs --container {{container_name}} {{pod_name}} Show logs for all containers in a pod: kubectl logs --all-containers={{true}} {{pod_name}} Stream pod logs: kubectl logs --follow {{pod_name}} Stream logs for a specified container in a pod: kubectl logs --follow --container {{container_name}} {{pod_name}} Show pod logs newer than a relative time like 10s, 5m, or 1h: kubectl logs --since={{relative_time}} {{pod_name}}
kubectl rollout Manage the rollout of a Kubernetes resource (deployments, daemonsets, and statefulsets). More information: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#rollout. Start a rolling restart of a resource: kubectl rollout restart {{resource_type}}/{{resource_name}} Watch the rolling update status of a resource: kubectl rollout status {{resource_type}}/{{resource_name}} Roll back a resource to the previous revision: kubectl rollout undo {{resource_type}}/{{resource_name}} View the rollout history of a resource: kubectl rollout history {{resource_type}}/{{resource_name}}
kubectl run Run pods in Kubernetes. Specifies pod generator to avoid deprecation error in some K8S versions. More information: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#run. Run an nginx pod and expose port 80: kubectl run {{nginx-dev}} --image=nginx --port 80 Run an nginx pod, setting the TEST_VAR environment variable: kubectl run {{nginx-dev}} --image=nginx --env="{{TEST_VAR}}={{testing}}" Show API calls that would be made to create an nginx container: kubectl run {{nginx-dev}} --image=nginx --dry-run={{none|server|client}} Run an Ubuntu pod interactively, never restart it, and remove it when it exits: kubectl run {{temp-ubuntu}} --image=ubuntu:22.
kubectx Utility to manage and switch between kubectl contexts. More information: https://github.com/ahmetb/kubectx. List the contexts: kubectx Switch to a named context: kubectx {{name}} Switch to the previous context: kubectx - Delete a named context: kubectx -d {{name}}
kubens Utility to switch between Kubernetes namespaces. More information: https://github.com/ahmetb/kubectx. List the namespaces: kubens Change the active namespace: kubens {{name}} Switch to the previous namespace: kubens -
kubetail Utility to tail multiple Kubernetes pod logs at the same time. More information: https://github.com/johanhaleby/kubetail. Tail the logs of multiple pods (whose name starts with “my_app”) in one go: kubetail {{my_app}} Tail only a specific container from multiple pods: kubetail {{my_app}} -c {{my_container}} To tail multiple containers from multiple pods: kubetail {{my_app}} -c {{my_container_1}} -c {{my_container_2}} To tail multiple applications at the same time separate them by comma: kubetail {{my_app_1}},{{my_app_2}}
kustomize Kustomize is a tool to easily deploy resources for Kubernetes. More information: https://github.com/kubernetes-sigs/kustomize. Create kustomization file with resources and namespace: kustomize create --resources {{deployment.yaml,service.yaml}} --namespace {{staging}} Build kustomization file and deploy it with kubectl: kustomize build . | kubectl apply -f - Set an image in the kustomization file: kustomize edit set image {{busybox=alpine:3.6}} Search for Kubernetes resources in the current directory to be added to the kustomization file: kustomize create --autodetect
l2ping Send an L2CAP echo request and receive an answer. More information: https://manned.org/l2ping. Ping a Bluetooth device: sudo l2ping {{mac_address}} Reverse ping a Bluetooth device: sudo l2ping -r {{mac_address}} Ping a Bluetooth device from a specified interface: sudo l2ping -i {{hci0}} {{mac_address}} Ping Bluetooth device with a specified sized data package: sudo l2ping -s {{byte_count}} {{mac_address}} Ping flood a Bluetooth device: sudo l2ping -f {{mac_address}} Ping a Bluetooth device a specified amount of times: sudo l2ping -c {{amount}} {{mac_address}}
lambo A super-powered laravel new for Laravel and Valet. See also lambo new for additional command flags. More information: https://github.com/tighten/lambo. Create a new Laravel application: lambo new {{app_name}} Open the configuration in your default editor: lambo edit-config Open the configuration in a specific editor: lambo edit-config --editor="{{path/to/editor}}" Open the configuration file that is run after new applications have been scaffolded: lambo edit-after
lambo new A super-powered laravel new for Laravel and Valet. More information: https://github.com/tighten/lambo. Create a new Laravel application: lambo new {{app_name}} Install the application in a specific path: lambo new --path={{path/to/directory}} {{app_name}} Include authentication scaffolding: lambo new --auth {{app_name}} Include a specific frontend: lambo new --{{vue|bootstrap|react}} {{app_name}} Install npm dependencies after the project has been created: lambo new --node {{app_name}} Create a Valet site after the project has been created: lambo new --link {{app_name}}
lando Local development environment and DevOps tool built on Docker. More information: https://docs.lando.dev/cli/. Initialize code for use with lando: lando init Print information about your app: lando info Start your app: lando start Stop your app: lando stop Restart your app: lando restart Rebuild your app from scratch, preserving data: lando rebuild Display logs for your app: lando logs Destroy your app: lando destroy
laravel A command-line installer for the Laravel framework. More information: https://laravel.com. Create a new Laravel application: laravel new {{name}} Use the latest development release: laravel new {{name}} --dev Overwrite if the directory already exists: laravel new {{name}} --force Install the Laravel Jetstream scaffolding: laravel new {{name}} --jet Install the Laravel Jetstream scaffolding with a specific stack: laravel new {{name}} --jet --stack {{livewire|inertia}} Install the Laravel Jetstream scaffolding with support for teams: laravel new {{name}} --jet --teams
laravel-zero A command-line installer for the Laravel Zero framework. More information: https://laravel-zero.com. Create a new Laravel Zero application: laravel-zero new {{name}} Update the installer to the latest version: laravel-zero self-update List the available installer commands: laravel-zero list
last View the last logged in users. More information: https://manned.org/last. View last logins, their duration and other information as read from /var/log/wtmp: last Specify how many of the last logins to show: last -n {{login_count}} Print the full date and time for entries and then display the hostname column last to prevent truncation: last -F -a View all logins by a specific user and show the IP address instead of the hostname: last {{username}} -i
latex Compile a DVI document from LaTeX source files. More information: https://www.latex-project.org. Compile a DVI document: latex {{source.tex}} Compile a DVI document, specifying an output directory: latex -output-directory={{path/to/directory}} {{source.tex}} Compile a DVI document, exiting on each error: latex -halt-on-error {{source.tex}}
latexdiff Determine differences between two LaTeX files. More information: https://ctan.org/pkg/latexdiff. Determine changes between different versions of a LaTeX file (the resulting LaTeX file can be compiled to show differences underlined): latexdiff {{old.tex}} {{new.tex}} > {{diff.tex}} Determine changes between different versions of a LaTeX file by highlighting differences in boldface: latexdiff --type=BOLD {{old.tex}} {{new.tex}} > {{diff.tex}} Determine changes between different versions of a LaTeX file, and display minor changes in equations with both added and deleted graphics: latexdiff --math-markup=fine --graphics-markup=both {{old.
latexmk Compile LaTeX source files into finished documents. Automatically does multiple runs when needed. More information: https://mg.readthedocs.io/latexmk.html. Compile a DVI (Device Independent file) document from every source: latexmk Compile a DVI document from a specific source file: latexmk {{source.tex}} Compile a PDF document: latexmk -pdf {{source.tex}} Force the generation of a document even if there are errors: latexmk -f {{source.tex}} Clean up temporary TEX files created for a specific TEX file: latexmk -c {{source.
laydown Command line application to prepare for Daily Standup. More information: https://github.com/badjr13/laydown. Add an item to DID section: laydown did {{item}} Add an item to DOING section: laydown doing {{item}} Clear all items: laydown clear Use an editor to edit current data: laydown edit Archive and clear current data: laydown archive
lb A tool for managing a blog contained in the current directory. Drafts and posts to operate on are selected interactively when running the commands. More information: https://github.com/LukeSmithxyz/lb. Make a new draft: lb new Edit a draft: lb edit Delete a draft: lb trash Publish a draft: lb publish Delete a published post: lb delete Unpublish a published post to edit it as a draft again: lb revise
ld Link object files together. More information: https://sourceware.org/binutils/docs-2.38/ld.html. Link a specific object file with no dependencies into an executable: ld {{path/to/file.o}} --output {{path/to/output_executable}} Link two object files together: ld {{path/to/file1.o}} {{path/to/file2.o}} --output {{path/to/output_executable}} Dynamically link an x86_64 program to glibc (file paths change depending on the system): ld --output {{path/to/output_executable}} --dynamic-linker /lib/ld-linux-x86-64.so.2 /lib/crt1.o /lib/crti.o -lc {{path/to/file.o}} /lib/crtn.o
ldapsearch Query an LDAP directory. More information: https://docs.ldap.com/ldap-sdk/docs/tool-usages/ldapsearch.html. Query an LDAP server for all items that are a member of the given group and return the object’s displayName value: ldapsearch -D '{{admin_DN}}' -w '{{password}}' -h {{ldap_host}} -b {{base_ou}} '{{memberOf=group1}}' displayName Query an LDAP server with a no-newline password file for all items that are a member of the given group and return the object’s displayName value: ldapsearch -D '{{admin_DN}}' -y '{{password_file}}' -h {{ldap_host}} -b {{base_ou}} '{{memberOf=group1}}' displayName
leave Set a reminder for when it’s time to leave. To remove reminders use kill $(pidof leave). More information: https://www.freebsd.org/cgi/man.cgi?query=leave. Set a reminder at a given time: leave {{time_to_leave}} Set a reminder to leave at noon: leave {{1200}} Set a reminder in a specific amount of time: leave +{{amount_of_time}} Set a reminder to leave in 4 hours and 4 minutes: leave +{{0404}}
lebab A JavaScript modernizer for transpiling code to ES6/ES7. Transformations must be provided for all examples. More information: https://github.com/lebab/lebab. Display a list of the available transformations: lebab --help Transpile using one or more comma-separated transformations: lebab --transform {{transformation}} Transpile a file to stdout: lebab {{path/to/input_file}} Transpile a file to the specified output file: lebab {{path/to/input_file}} --out-file {{path/to/output_file}} Replace all .js files in-place in the specified directory, glob or file: lebab --replace {{directory|glob|file}}
ledger Ledger is a powerful, double-entry accounting system that is accessed from the UNIX command-line. More information: https://www.ledger-cli.org. Print a balance report showing totals: ledger balance --file {{path/to/ledger.journal}} List all postings in Expenses ordered by amount: ledger register {{expenses}} --sorted {{amount}} Print total Expenses other than Drinks and Food: ledger balance {{Expenses}} and not ({{Drinks}} or {{Food}}) Print a budget report: ledger budget Print summary information about all the postings: ledger stats
lein Manage Clojure projects with declarative configuration. More information: https://leiningen.org. Generate scaffolding for a new project based on a template: lein new {{template_name}} {{project_name}} Start a REPL session either with the project or standalone: lein repl Run the project’s -main function with optional args: lein run {{args}} Run the project’s tests: lein test Package up the project files and all its dependencies into a jar file: lein uberjar
lerna A tool for managing JavaScript projects with multiple packages. More information: https://lerna.js.org. Initialize project files (lerna.json, package.json, .git, etc.): lerna init Install all external dependencies of each package and symlink together local dependencies: lerna bootstrap Run a specific script for every package that contains it in its package.json: lerna run {{script}} Execute an arbitrary shell command in every package: lerna exec -- {{ls}} Publish all packages that have changed since the last release: lerna publish
less Open a file for interactive reading, allowing scrolling and search. More information: https://greenwoodsoftware.com/less/. Open a file: less {{source_file}} Page down/up: <Space> (down), b (up) Go to end/start of file: G (end), g (start) Forward search for a string (press n/N to go to next/previous match): /{{something}} Backward search for a string (press n/N to go to next/previous match): ?{{something}} Follow the output of the currently opened file: F Open the current file in an editor: v
lex Lexical analyzer generator. Given the specification for a lexical analyzer, generates C code implementing it. More information: https://manned.org/lex.1. Generate an analyzer from a Lex file: lex {{analyzer.l}} Specify the output file: lex -t {{analyzer.l}} > {{analyzer.c}} Compile a C file generated by Lex: c99 {{path/to/lex.yy.c}} -o {{executable}}
license Create license files for open-source projects. More information: https://nishanths.github.io/license. Print a license to stdout, using the defaults (auto-detected author name, and current year): license {{license_name}} Generate a license and save it to a file: license -o {{path/to/file}} {{license_name}} List all available licenses: license ls Generate a license with custom author name and year: license --name {{author}} --year {{release_year}} {{license_name}}
licensor Write licenses to stdout. More information: https://github.com/raftario/licensor. Write the MIT license to a file named LICENSE: licensor {{MIT}} > {{LICENSE}} Write the MIT license with a [p]laceholder copyright notice to a file named LICENSE: licensor -p {{MIT}} > {{LICENSE}} Specify a copyright holder named Bobby Tables: licensor {{MIT}} {{"Bobby Tables"}} > {{LICENSE}} Specify licence exceptions with a WITH expression: licensor "{{Apache-2.0 WITH LLVM-exception}}" > {{LICENSE}} List all available licenses: licensor --licenses
light-arionum-cli The PHP light wallet for the Arionum cryptocurrency. More information: https://github.com/arionum/lightWalletCLI. Generate a new public/private key pair: light-arionum-cli Display the balance of the current address: light-arionum-cli balance Display the balance of the specified address: light-arionum-cli balance {{address}} Send a transaction with an optional message: light-arionum-cli send {{address}} {{value}} {{optional_message}} Export the current wallet information: light-arionum-cli export Display information about the current block: light-arionum-cli block Display information about the current address’ transactions: light-arionum-cli transactions
lighthouse Analyzes web applications and web pages, collecting modern performance metrics and insights on developer best practices. More information: https://github.com/GoogleChrome/lighthouse. Generate an HTML report for a specific website and save it to a file in the current directory: lighthouse {{https://example.com}} Generate a JSON report and print it: lighthouse --output {{json}} {{https://example.com}} Generate a JSON report and save it to a specific file: lighthouse --output {{json}} --output-path {{path/to/file.json}} {{https://example.com}} Generate a report using the browser in headless mode without logging to stdout: lighthouse --quiet --chrome-flags="{{--headless}}" {{https://example.
lilypond Typeset music and/or produce MIDI from file. More information: https://lilypond.org. Compile a lilypond file into a PDF: lilypond {{path/to/file}} Compile into the specified format: lilypond --formats={{format_dump}} {{path/to/file}} Compile the specified file, suppressing progress updates: lilypond -s {{path/to/file}} Compile the specified file, and also specify the output filename: lilypond --output={{path/to/output_file}} {{path/to/input_file}} Show the current version of lilypond: lilypond --version
lima This command is an alias of limactl shell for the default VM instance. You can also set the $LIMA_INSTANCE environment variable to work on a different instance. More information: https://github.com/lima-vm/lima. View documentation for the original command: tldr limactl
limactl Virtual machine manager for Linux guests, with multiple VM templates available. Can be used to run containers on macOS, but also for generic virtual machine use cases on macOS and Linux hosts. More information: https://github.com/lima-vm/lima. List VMs: limactl list Create a VM using the default settings and optionally provide a name and/or a template (see limactl create --list-templates for available templates): limactl create --name {{vm_name}} template://{{debian|fedora|ubuntu|…}} Start a VM (this might install some dependencies in it and take a few minutes): limactl start {{vm_name}}
link Create a hard link to an existing file. For more options, see the ln command. More information: https://www.gnu.org/software/coreutils/link. Create a hard link from a new file to an existing file: link {{path/to/existing_file}} {{path/to/new_file}}
linkchecker Command-line client to check HTML documents and websites for broken links. More information: https://linkchecker.github.io/linkchecker/. Find broken links on https://example.com/: linkchecker {{https://example.com/}} Also check URLs that point to external domains: linkchecker --check-extern {{https://example.com/}} Ignore URLs that match a specific regular expression: linkchecker --ignore-url {{regular_expression}} {{https://example.com/}} Output results to a CSV file: linkchecker --file-output {{csv}}/{{path/to/file}} {{https://example.com/}}
liquidctl Control liquid coolers. More information: https://github.com/liquidctl/liquidctl. List available devices: liquidctl list Initialize all supported devices: sudo liquidctl initialize all Print the status of available liquid coolers: liquidctl status Match a string in product name to pick a device and set its fan speed to 0% at 20°C, 50% at 50°C and 100% at 70°C: liquidctl --match {{string}} set fan speed {{20 0 50 50 70 100}}
live-server A simple development HTTP server with live reload capability. More information: https://github.com/tapio/live-server. Serve an index.html file and reload on changes: live-server Specify a port (default is 8080) from which to serve a file: live-server --port={{8081}} Specify a given file to serve: live-server --open={{about.html}} Proxy all requests for ROUTE to URL: live-server --proxy={{/}}:{{http:localhost:3000}}
llc Compiles LLVM Intermediate Representation or bitcode to target-specific assembly language. More information: https://www.llvm.org/docs/CommandGuide/llc.html. Compile a bitcode or IR file to an assembly file with the same base name: llc {{path/to/file.ll}} Enable all optimizations: llc -O3 {{path/to/input.ll}} Output assembly to a specific file: llc --output {{path/to/output.s}} Emit fully relocatable, position independent code: llc -relocation-model=pic {{path/to/input.ll}}
lldb The LLVM Low-Level Debugger. More information: https://lldb.llvm.org. Debug an executable: lldb {{executable}} Attach lldb to a running process with a given PID: lldb -p {{pid}} Wait for a new process to launch with a given name, and attach to it: lldb -w -n {{process_name}}
lli Directly execute programs from LLVM bitcode. More information: https://www.llvm.org/docs/CommandGuide/lli.html. Execute a bitcode or IR file: lli {{path/to/file.ll}} Execute with command-line arguments: lli {{path/to/file.ll}} {{argument1 argument2 ...}} Enable all optimizations: lli -O3 {{path/to/file.ll}} Load a dynamic library before linking: lli --dlopen={{path/to/library.dll}} {{path/to/file.ll}}
llvd Linkedin Learning Video Downloader. More information: https://github.com/knowbee/llvd. Download a [c]ourse using cookie-based authentication: llvd -c {{course-slug}} --cookies Download a course at a specific [r]esolution: llvd -c {{course-slug}} -r 720 Download a course with [ca]ptions (subtitles): llvd -c {{course-slug}} --caption Download a course [p]ath with [t]hrottling between 10 to 30 seconds: llvd -p {{path-slug}} -t {{10,30}} --cookies
llvm-ar This command is an alias of ar. View documentation for the original command: tldr ar
llvm-as LLVM Intermediate Representation (.ll) to Bitcode (.bc) assembler. More information: https://llvm.org/docs/CommandGuide/llvm-as.html. Assemble an IR file: llvm-as -o {{path/to/out.bc}} {{path/to/source.ll}} Assemble an IR file and include a module hash in the produced Bitcode file: llvm-as --module-hash -o {{path/to/out.bc}} {{path/to/source.ll}} Read an IR file from stdin and assemble it: cat {{path/to/source.ll}} | llvm-as -o {{path/to/out.bc}}
llvm-bcanalyzer LLVM Bitcode (.bc) analyzer. More information: https://llvm.org/docs/CommandGuide/llvm-bcanalyzer.html. Print statistics about a Bitcode file: llvm-bcanalyzer {{path/to/file.bc}} Print an SGML representation and statistics about a Bitcode file: llvm-bcanalyzer -dump {{path/to/file.bc}} Read a Bitcode file from stdin and analyze it: cat {{path/to/file.bc}} | llvm-bcanalyzer
llvm-cat Concatenate LLVM Bitcode (.bc) files. More information: https://github.com/llvm/llvm-project/blob/main/llvm/tools/llvm-cat/llvm-cat.cpp. Concatenate Bitcode files: llvm-cat {{path/to/file1.bc}} {{path/to/file2.bc}} -o {{path/to/out.bc}}
llvm-config Get various configuration information needed to compile programs which use LLVM. Typically called from build systems, like in Makefiles or configure scripts. More information: https://llvm.org/docs/CommandGuide/llvm-config.html. Compile and link an LLVM based program: clang++ $(llvm-config --cxxflags --ldflags --libs) --output {{path/to/output_executable}} {{path/to/source.cc}} Print the PREFIX of your LLVM installation: llvm-config --prefix Print all targets supported by your LLVM build: llvm-config --targets-built
llvm-dis Converts LLVM bitcode files into human-readable LLVM Intermediate Representation (IR). More information: https://www.llvm.org/docs/CommandGuide/llvm-dis.html. Convert a bitcode file as LLVM IR and write the result to stdout: llvm-dis {{path/to/input.bc}} -o - Convert a bitcode file to an LLVM IR file with the same filename: llvm-dis {{path/to/file.bc}} Convert a bitcode file to LLVM IR, writing the result to the specified file: llvm-dis {{path/to/input.bc}} -o {{path/to/output.ll}}
llvm-g++ This command is an alias of clang++. View documentation for the original command: tldr clang++
llvm-gcc This command is an alias of clang. View documentation for the original command: tldr clang
llvm-nm This command is an alias of nm. View documentation for the original command: tldr nm
llvm-objdump This command is an alias of objdump. View documentation for the original command: tldr objdump
llvm-strings This command is an alias of strings. View documentation for the original command: tldr strings
lmms Free, open source, cross-platform digital audio workstation. Render a .mmp or .mmpz project file, dump a .mmpz as XML, or start the GUI. More information: https://lmms.io. Start the GUI: lmms Start the GUI and load external config: lmms --config {{path/to/config.xml}} Start the GUI and import MIDI or Hydrogen file: lmms --import {{path/to/midi/or/hydrogen/file}} Start the GUI with a specified window size: lmms --geometry {{x_size}}x{{y_size}}+{{x_offset}}+{{y_offset}} Dump a .mmpz file: lmms dump {{path/to/mmpz/file.
ln Creates links to files and directories. More information: https://www.gnu.org/software/coreutils/ln. Create a symbolic link to a file or directory: ln -s {{/path/to/file_or_directory}} {{path/to/symlink}} Overwrite an existing symbolic link to point to a different file: ln -sf {{/path/to/new_file}} {{path/to/symlink}} Create a hard link to a file: ln {{/path/to/file}} {{path/to/hardlink}}
loadtest Run a load test on the selected HTTP or WebSockets URL. More information: https://github.com/alexfernandez/loadtest. Run with concurrent users and a specified amount of requests per second: loadtest --concurrency {{10}} --rps {{200}} {{https://example.com}} Run with a custom HTTP header: loadtest --headers "{{accept:text/plain;text-html}}" {{https://example.com}} Run with a specific HTTP method: loadtest --method {{GET}} {{https://example.com}}
loc Tool written in Rust that counts lines of code. More information: https://github.com/cgag/loc. Print lines of code in the current directory: loc Print lines of code in the target directory: loc {{path/to/directory}} Print lines of code with stats for individual files: loc --files Print lines of code without .gitignore (etc.) files (e.g. two -u flags will additionally count hidden files and dirs): loc -u
local Declare local variables and give them attributes. More information: https://www.gnu.org/software/bash/manual/bash.html#Bash-Builtins. Declare a string variable with the specified value: local {{variable}}="{{value}}" Declare an integer variable with the specified value: local -i {{variable}}="{{value}}" Declare an array variable with the specified value: local {{variable}}=({{item_a item_b item_c}}) Declare an associative array variable with the specified value: local -A {{variable}}=({{[key_a]=item_a [key_b]=item_b [key_c]=item_c}}) Declare a readonly variable with the specified value: local -r {{variable}}="{{value}}"
locust Load-testing tool to determine number of concurrent users a system can handle. More information: https://locust.io. Load-test “example.com” with web interface using locustfile.py: locust --host={{http://example.com}} Use a different test file: locust --locustfile={{test_file.py}} --host={{http://example.com}} Run test without web interface, spawning 1 user a second until there are 100 users: locust --no-web --clients={{100}} --hatch-rate={{1}} --host={{http://example.com}} Start Locust in master mode: locust --master --host={{http://example.com}} Connect Locust slave to master: locust --slave --host={{http://example.com}} Connect Locust slave to master on a different machine: locust --slave --master-host={{master_hostname}} --host={{http://example.
logger Add messages to syslog (/var/log/syslog). More information: https://manned.org/logger. Log a message to syslog: logger {{message}} Take input from stdin and log to syslog: echo {{log_entry}} | logger Send the output to a remote syslog server running at a given port. Default port is 514: echo {{log_entry}} | logger --server {{hostname}} --port {{port}} Use a specific tag for every line logged. Default is the name of logged in user: echo {{log_entry}} | logger --tag {{tag}}
logname Shows the user’s login name. More information: https://www.gnu.org/software/coreutils/logname. Display the currently logged in user’s name: logname
logstash An Elasticsearch ETL (extract, transform and load) tool. Commonly used to load data from various sources (such as databases and log files) into Elasticsearch. More information: https://www.elastic.co/products/logstash. Check validity of a Logstash configuration: logstash --configtest --config {{logstash_config.conf}} Run Logstash using configuration: sudo logstash --config {{logstash_config.conf}} Run Logstash with the most basic inline configuration string: sudo logstash -e 'input {} filter {} output {}'
lolcat Put a rainbow in everything you cat to the console. More information: https://github.com/busyloop/lolcat. Print a file to the console in rainbow colors: lolcat {{path/to/file}} Print the result of a text-producing command in rainbow colors: {{fortune}} | lolcat Print a file to the console with animated rainbow colors: lolcat -a {{path/to/file}} Print a file to the console with 24-bit (truecolor) rainbow colors: lolcat -t {{path/to/file}}
lorem Create more or less random lorem ipsum text. More information: https://manned.org/lorem. Print the specified number of words: lorem -n {{20}} Print 10 lines of Goethe’s Faust: lorem -l {{10}} --faust Print 5 sentences of Poe’s Raven: lorem -s {{5}} --raven Print 40 random characters from Boccaccio’s Decameron: lorem --randomize -c {{40}} --decamerone
lp Print files. More information: https://manned.org/lp. Print the output of a command to the default printer (see lpstat command): echo "test" | lp Print a file to the default printer: lp {{path/to/filename}} Print a file to a named printer (see lpstat command): lp -d {{printer_name}} {{path/to/filename}} Print N copies of file to default printer (replace N with desired number of copies): lp -n {{N}} {{path/to/filename}} Print only certain pages to the default printer (print pages 1, 3-5, and 16): lp -P 1,3-5,16 {{path/to/filename}}
lpass Command-line interface for the LastPass password manager. More information: https://github.com/lastpass/lastpass-cli. Log in to your LastPass account, by entering your master password when prompted: lpass login {{username}} Show login status: lpass status List all sites grouped by category: lpass ls Generate a new password for gmail.com with the identifier myinbox and add to LastPass: lpass generate --username {{username}} --url {{gmail.com}} {{myinbox}} {{password_length}} Show password for a specified entry: lpass show {{myinbox}} --password
lpinfo List connected printers and installed drivers for the CUPS print server. More information: https://www.cups.org/doc/man-lpinfo.html. List all the currently connected printers: lpinfo -v List all the currently installed printer drivers: lpinfo -m Search installed printer drivers by make and model: lpinfo --make-and-model "{{printer_model}}" -m
lpr CUPS tool for printing files. See also: lpstat and lpadmin. More information: https://www.cups.org/doc/man-lpr.html. Print a file to the default printer: lpr {{path/to/file}} Print 2 copies: lpr -# {{2}} {{path/to/file}} Print to a named printer: lpr -P {{printer}} {{path/to/file}} Print either a single page (e.g. 2) or a range of pages (e.g. 2–16): lpr -o page-ranges={{2|2-16}} {{path/to/file}} Print double-sided either in portrait (long) or in landscape (short): lpr -o sides={{two-sided-long-edge|two-sided-short-edge}} {{path/to/file}}
lpstat Show status information about printers. More information: https://manned.org/lpstat. List printers present on the machine and whether they are enabled for printing: lpstat -p Show the default printer: lpstat -d Display all available status information: lpstat -t Show a list of print jobs queued by the specified user: lpstat -u {{user}}
ls List directory contents. More information: https://www.gnu.org/software/coreutils/ls. List files one per line: ls -1 List all files, including hidden files: ls -a List all files, with trailing / added to directory names: ls -F Long format list (permissions, ownership, size, and modification date) of all files: ls -la Long format list with size displayed using human-readable units (KiB, MiB, GiB): ls -lh Long format list sorted by size (descending): ls -lS
lsd List directory contents. The next generation ls command, written in Rust. More information: https://github.com/Peltoche/lsd. List files and directories, one per line: lsd -1 List all files and directories, including hidden ones, in the current directory: lsd -a List all files and directories with trailing / added to directory names: lsd -F List all files and directories in long format (permissions, ownership, size, and modification date): lsd -la List all files and directories in long format with size displayed using human-readable units (KiB, MiB, GiB): lsd -lh
lsof Lists open files and the corresponding processes. Note: Root privileges (or sudo) is required to list files opened by others. More information: https://manned.org/lsof. Find the processes that have a given file open: lsof {{path/to/file}} Find the process that opened a local internet port: lsof -i :{{port}} Only output the process ID (PID): lsof -t {{path/to/file}} List files opened by the given user: lsof -u {{username}} List files opened by the given command or process: lsof -c {{process_or_command_name}}
lspath List the contents of the PATH environment variable, with optional paging. More information: https://github.com/clementi/lspath. Print the contents of the system PATH variable, with one element per line: lspath Print the current contents of the system PATH variable, with one element per line, with the output paged: lspath --page
lt Localtunnel exposes your localhost to the world for easy testing and sharing. More information: https://github.com/localtunnel/localtunnel. Start tunnel from a specific port: lt --port {{8000}} Specify the upstream server doing the forwarding: lt --port {{8000}} --host {{host}} Request a specific subdomain: lt --port {{8000}} --subdomain {{subdomain}} Print basic request info: lt --port {{8000}} --print-requests Open the tunnel URL in the default web browser: lt --port {{8000}} --open
lua A powerful, light-weight embeddable programming language. More information: https://www.lua.org. Start an interactive Lua shell: lua Execute a Lua script: lua {{path/to/script.lua}} {{--optional-argument}} Execute a Lua expression: lua -e '{{print("Hello World")}}'
luac Lua bytecode compiler. More information: https://www.lua.org. Compile a Lua source file to Lua bytecode: luac -o {{byte_code.luac}} {{source.lua}} Do not include debug symbols in the output: luac -s -o {{byte_code.luac}} {{source.lua}}
luajit A just-in-time compiler (JIT) for the Lua programming language. See also: lua. More information: https://luajit.org/luajit.html. Start an interactive Lua shell: luajit Execute a Lua script: luajit {{path/to/script.lua}} {{--optional-argument}} Execute a Lua expression: luajit -e '{{print("Hello World")}}'
lualatex An extended version of TeX using Lua to compile. More information: https://manned.org/lualatex.1. Start texlua to act as a Lua interpreter: lualatex Compile a Tex file to PDF: lualatex {{path/to/file.tex}} Compile a Tex file without error interruption: lualatex -interaction nonstopmode {{path/to/file.tex}} Compile a Tex file with a specific output file name: lualatex -jobname={{filename}} {{path/to/file.tex}}
lumen A command-line installer for the Lumen micro-framework. More information: https://lumen.laravel.com. Create a new Lumen application: lumen new {{application_name}} List the available installer commands: lumen list
lwp-request Simple command-line HTTP client. Built with libwww-perl. More information: https://metacpan.org/pod/lwp-request. Make a simple GET request: lwp-request -m GET {{http://example.com/some/path}} Upload a file with a POST request: lwp-request -m POST {{http://example.com/some/path}} < {{path/to/file}} Make a request with a custom user agent: lwp-request -H 'User-Agent: {{user_agent}} -m {{METHOD}} {{http://example.com/some/path}} Make a request with HTTP authentication: lwp-request -C {{username}}:{{password}} -m {{METHOD}} {{http://example.com/some/path}} Make a request and print request headers: lwp-request -U -m {{METHOD}} {{http://example.
lynx Command-line web browser. More information: https://lynx.browser.org. Visit a website: lynx {{example.com}} Apply restrictions for anonymous account: lynx -anonymous {{example.com}} Turn on mouse support, if available: lynx -use_mouse {{example.com}} Force color mode on, if available: lynx -color {{example.com}} Open a link, using a specific file to read and write cookies: lynx -cookie_file={{path/to/file}} {{example.com}} Navigate forwards and backwards through the links on a page: Up arrow key, Down arrow key Go back to the previously displayed page: Left arrow key or u
lz4 Compress or decompress .lz4 files. More information: https://github.com/lz4/lz4. Compress a file: lz4 {{path/to/file}} Decompress a file: lz4 -d {{file.lz4}} Decompress a file and write to stdout: lz4 -dc {{file.lz4}} Package and compress a directory and its contents: tar cvf - {{path/to/directory}} | lz4 - {{dir.tar.lz4}} Decompress and unpack a directory and its contents: lz4 -dc {{dir.tar.lz4}} | tar -xv Compress a file using the best compression: lz4 -9 {{path/to/file}}
lzcat This command is an alias of xz --format=lzma --decompress --stdout. More information: https://manned.org/lzcat. View documentation for the original command: tldr xz
lzcmp This command is an alias of xzcmp. View documentation for the original command: tldr xzcmp
lzegrep This command is an alias of xzgrep --extended-regexp. See also: egrep. View documentation for the original command: tldr xzgrep
lzfgrep This command is an alias of xzgrep --fixed-strings. See also: fgrep. View documentation for the original command: tldr xzgrep
lzgrep This command is an alias of xzgrep. View documentation for the original command: tldr xzgrep
lzip Lzip is a lossless data compressor with a user interface similar to gzip or bzip2. Lzip uses a simplified form of the “Lempel-Ziv-Markovchain-Algorithm"z (LZMA) stream format and provides a 3 factor integrity checking to maximize interoperability and optimize safety. More information: https://www.nongnu.org/lzip. Archive a file, replacing it with with a compressed version: lzip {{path/to/file}} Archive a file, keeping the input file: lzip -k {{path/to/file}} Archive a file with the best compression (level=9): lzip -k {{path/to/file}} --best
lzless This command is an alias of xzless. View documentation for the original command: tldr xzless
lzma This command is an alias of xz --format=lzma. More information: https://manned.org/lzma. View documentation for the original command: tldr xz
lzmore This command is an alias of xzmore. View documentation for the original command: tldr xzmore
lzop Compress or decompress files with LZO compression. More information: https://www.lzop.org/. Compress a file into a new file with the .lzo suffix: lzop {{path/to/file}} Decompress a file: lzop -d {{path/to/file}}.lzo Compress a file, while specifying the compression level. 0 = Worst, 9 = Best (Default level is 3): lzop -{{level}} {{path/to/file}}
m4 Macro processor. More information: https://www.gnu.org/software/m4. Process macros in a file: m4 {{path/to/file}} Define a macro before processing files: m4 -D{{macro_name}}={{macro_value}} {{path/to/file}}
macchina Display information about your computer. More information: https://github.com/Macchina-CLI/macchina. List out system information, with either default settings or those specified in your configuration file: macchina Specify a custom configuration file path: macchina --config {{path/to/configuration_file}} List system information, but lengthen uptime, shell and kernel output: macchina --long-uptime --long-shell --long-kernel Check for any errors/system failures encountered when trying to fetch system information: macchina --doctor List original artists of all the ASCII art: macchina --ascii-artists
maestral A lightweight Dropbox client for macOS and Linux. More information: https://maestral.app/cli. Start the GUI: maestral gui Print current status of Maestral: maestral status Pause syncing: maestral pause Resume syncing: maestral resume Print sync status of a specific file or folder: maestral filestatus {{path/to/file_or_directory}}
magento Manage the Magento PHP framework. More information: https://magento.com. Enable one or more space-separated modules: magento module:enable {{module(s)}} Disable one or more space-separated modules: magento module:disable {{module(s)}} Update the database after enabling modules: magento setup:upgrade Update code and dependency injection configuration: magento setup:di:compile Deploy static assets: magento setup:static-content:deploy Enable maintenance mode: magento maintenance:enable Disable maintenance mode: magento maintenance:disable List all available commands: magento list
magick Create, edit, compose, or convert bitmap images. ImageMagick version 7+. See convert for versions 6 and below. More information: https://imagemagick.org/. Convert file type: magick {{image.png}} {{image.jpg}} Resize an image, making a new copy: magick convert -resize {{100x100}} {{image.jpg}} {{image.jpg}} Create a GIF using images: magick {{*.jpg}} {{images.gif}} Create checkerboard pattern: magick -size {{640x480}} pattern:checkerboard {{checkerboard.png}} Convert images to individual PDF pages: magick {{*.jpg}} +adjoin {{page-%d.pdf}}
mail The command operates on the user’s mailbox if no argument is given. To send an email the message body is built from stdin. More information: https://manned.org/mail. Send a typed email message. The command-line below continues after pressing Enter key. Input CC email-id (optional) press Enter key. Input message text (can be multiline). Press Ctrl-D key to complete the message text: mail --subject="{{subject line}}" {{to_user@example.com}} Send an email that contains file content: mail --subject="{{$HOSTNAME filename.
mailx Send and receive mail. More information: https://manned.org/mailx. Send mail (the content should be typed after the command, and ended with Ctrl+D): mailx -s "{{subject}}" {{to_addr}} Send mail with content passed from another command: echo "{{content}}" | mailx -s "{{subject}}" {{to_addr}} Send mail with content read from a file: mailx -s "{{subject}}" {{to_addr}} < {{content.txt}} Send mail to a recipient and CC to another address: mailx -s "{{subject}}" -c {{cc_addr}} {{to_addr}}
make Task runner for targets described in Makefile. Mostly used to control the compilation of an executable from source code. More information: https://www.gnu.org/software/make/manual/make.html. Call the first target specified in the Makefile (usually named “all”): make Call a specific target: make {{target}} Call a specific target, executing 4 jobs at a time in parallel: make -j{{4}} {{target}} Use a specific Makefile: make --file {{path/to/file}} Execute make from another directory: make --directory {{path/to/directory}}
makebuildserver Create an F-Droid build server virtual machine. More information: https://f-droid.org/en/docs/Build_Server_Setup/. Create a new virtual machine or update an existing one (if available): makebuildserver Force creating a fresh virtual machine: makebuildserver --clean
makensis Cross-platform compiler for NSIS installers. It compiles a NSIS script into a Windows installer executable. More information: https://nsis.sourceforge.io/Docs/Chapter3.html. Compile a NSIS script: makensis {{path/to/file.nsi}} Compile a NSIS script in strict mode (treat warnings as errors): makensis -WX {{path/to/file.nsi}} Print help for a specific command: makensis -CMDHELP {{command}}
makepasswd Generate and encrypt passwords. More information: https://manpages.debian.org/latest/makepasswd/makepasswd.1.en.html. Generate a random password (8 to 10 characters long, containing letters and numbers): makepasswd Generate a 10 characters long password: makepasswd --chars {{10}} Generate a 5 to 10 characters long password: makepasswd --minchars {{5}} --maxchars {{10}} Generate a password containing only the characters “b”, “a” or “r”: makepasswd --string {{bar}}
mamba Fast, cross-platform package manager, intended as a drop-in replacement for conda. Some subcommands such as mamba repoquery have their own usage documentation. More information: https://mamba.readthedocs.io/en/latest/user_guide/mamba.html. Create a new environment, installing the specified packages into it: mamba create --name {{environment_name}} {{python=3.10 matplotlib}} Install packages into the current environment, specifying the package [c]hannel: mamba install -c {{conda-forge}} {{python=3.6 numpy}} Update all packages in the current environment: mamba update --all Search for a specific package across repositories: mamba repoquery search {{numpy}}
mamba repoquery Efficiently query conda and mamba package repositories and package dependencies. More information: https://mamba.readthedocs.io/en/latest/user_guide/mamba.html#repoquery. Search for all available versions of a particular package: mamba repoquery search {{package}} Search for all packages satisfying specific constraints: mamba repoquery search {{sphinx<5}} List the dependencies of a package installed in the currently activated environment, in a tree format: mamba repoquery depends --tree {{scipy}} Print packages in the current environment that require a particular package to be installed (i.
man Format and display manual pages. More information: https://www.man7.org/linux/man-pages/man1/man.1.html. Display the man page for a command: man {{command}} Display the man page for a command from section 7: man {{7}} {{command}} List all available sections for a command: man -f {{command}} Display the path searched for manpages: man --path Display the location of a manpage rather than the manpage itself: man -w {{command}} Display the man page using a specific locale: man {{command}} --locale={{locale}}
masscan Network scanner for scanning as fast as possible. Best run with elevated privileges. Nmap compatibility run masscan --nmap to find out more. More information: https://github.com/robertdavidgraham/masscan. Scan an IP or network subnet for port 80: masscan {{ip_address|network_prefix}} --ports {{80}} Scan a class B subnet for the top 100 ports at 100,000 packets per second: masscan {{10.0.0.0/16}} --top-ports {{100}} --rate {{100000}} Scan a class B subnet avoiding ranges from a specific exclude file: masscan {{10.
mat2 Anonymise various file formats by removing metadata. More information: https://0xacab.org/jvoisin/mat2. List supported file formats: mat2 --list Remove metadata from a file: mat2 {{path/to/file}} Remove metadata from a file and print detailed output to the console: mat2 --verbose {{path/to/file}} Show metadata in a file without removing it: mat2 --show {{path/to/file}} Partially remove metadata from a file: mat2 --lightweight {{path/to/file}}
mate-dictionary Look up words on dictionaries. More information: https://manned.org/mate-dictionary. Print a specific word definition: mate-dictionary --no-window --look-up '{{word}}' Show similar words for a specific one in a new window: mate-dictionary --match '{{word}}'
matlab Numerical computation environment by MathWorks. More information: https://uk.mathworks.com/help/matlab/. Run without splash screen during startup: matlab -nosplash Execute a MATLAB statement: matlab -r "{{matlab_statement}}" Run a MATLAB script: matlab -r "run({{path/to/script.m}})"
maza Local ad blocker. Like Pi-hole but local and using the operating system. More information: https://github.com/tanrax/maza-ad-blocking. Update the Maza database: maza update Start Maza: sudo maza start Stop Maza: sudo maza stop Show the status of Maza: maza status
mc Midnight Commander, a terminal based file manager. Navigate the directory structure using the arrow keys, the mouse or by typing the commands into the terminal. More information: https://midnight-commander.org. Start Midnight Commander: mc Start Midnight Commander in black and white: mc -b
mcfly A smart command history search and management tool. Replaces your default shell history search (ctrl-r) with an intelligent search engine providing context and relevance to the commands. More information: https://github.com/cantino/mcfly. Print the mcfly integration code for the specified shell: mcfly init {{bash|fish|zsh}} Search the history for a command, with 20 results: mcfly search --results {{20}} "{{search_terms}}" Add a new command to the history: mcfly add "{{command}}" Record that a directory has moved and transfer the historical records from the old path to the new one: mcfly move "{{path/to/old_directory}}" "{{path/to/new_directory}}"
mcs Mono C# Compiler. More information: https://manned.org/mcs.1. Compile the specified files: mcs {{path/to/input_file1.cs path/to/input_file2.cs ...}} Specify the output program name: mcs -out:{{path/to/file.exe}} {{path/to/input_file1.cs path/to/input_file2.cs ...}} Specify the output program type: mcs -target:{{exe|winexe|library|module}} {{path/to/input_file1.cs path/to/input_file2.cs ...}}
md-to-clip Converter from tldr-pages to Command Line Interface Pages. See also: clip-view. More information: https://github.com/command-line-interface-pages/v2-tooling/tree/main/md-to-clip. Convert tldr-pages files and save into the same directories: md-to-clip {{path/to/page1.md path/to/page2.md ...}} Convert tldr-pages files and save into a specific directory: md-to-clip --output-directory {{path/to/directory}} {{path/to/page1.md path/to/page2.md ...}} Convert a tldr-page file to stdout: md-to-clip --no-file-save <(echo '{{page-content}}') Convert tldr-pages files while recognizing additional placeholders from a specific config: md-to-clip --special-placeholder-config {{path/to/config.yaml}} {{path/to/page1.md path/to/page2.md ...}}
md5sum Calculate MD5 cryptographic checksums. More information: https://www.gnu.org/software/coreutils/md5sum. Calculate the MD5 checksum for one or more files: md5sum {{path/to/file1 path/to/file2 ...}} Calculate and save the list of MD5 checksums to a file: md5sum {{path/to/file1 path/to/file2 ...}} > {{path/to/file.md5}} Calculate an MD5 checksum from stdin: {{command}} | md5sum Read a file of MD5 sums and filenames and verify all files have matching checksums: md5sum --check {{path/to/file.md5}} Only show a message for missing files or when verification fails: md5sum --check --quiet {{path/to/file.
mdp A command-line based tool to make presentations from Markdown files. More information: https://github.com/visit1985/mdp. Launch a presentation in the terminal from a Markdown file: mdp {{presentation.md}} Disable fading transitions: mdp --nofade {{presentation.md}} Invert font colors to use in terminals with light background: mdp --invert {{presentation.md}} Disable transparency in transparent terminals: mdp --notrans {{presentation.md}}
mediainfo Display metadata from video and audio files. More information: https://mediaarea.net/MediaInfo. Display metadata for a given file in the console: mediainfo {{file}} Store the output to a given file along with displaying in the console: mediainfo --Logfile={{out.txt}} {{file}} Display the list of metadata attributes that can be extracted: mediainfo --Info-Parameters
meld Graphical diffing and merging tool. More information: https://meldmerge.org/. Start meld: meld Compare 2 files: meld {{path/to/file_1}} {{path/to/file_2}} Compare 2 directories: meld {{path/to/directory_1}} {{path/to/directory_2}} Compare 3 files: meld {{path/to/file_1}} {{path/to/file_2}} {{path/to/file_3}} Open a comparison as a new tab in a pre-existing meld instance: meld --newtab {{path/to/file_1}} {{path/to/file_2}} Compare multiple sets of files: meld --diff {{path/to/file_1}} {{path/to/file_2}} --diff {{path/to/file_3}} {{path/to/file_4}}
mesg Check or set a terminal’s ability to receive messages from other users, usually from the write command. See also write. More information: https://manned.org/mesg. Check terminal’s openness to write messages: mesg Disable receiving messages from the write command: mesg n Enable receiving messages from the write command: mesg y
meshlabserver Command-line interface for the MeshLab 3D mesh processing software. More information: https://manned.org/meshlabserver. Convert an STL file to an OBJ file: meshlabserver -i {{input.stl}} -o {{output.obj}} Convert a WRL file to a OFF file, including the vertex and face normals in the output mesh: meshlabserver -i {{input.wrl}} -o {{output.off}} -om vn fn Dump a list of all the available processing filters into a file: meshlabserver -d {{path/to/file}} Process a 3D file using a filter script created in the MeshLab GUI (Filters > Show current filter script > Save Script): meshlabserver -i {{input.
meson SCons-like build system that uses Python as a front-end language and Ninja as a building backend. More information: https://mesonbuild.com. Generate a C project with a given name and version: meson init --language={{c}} --name={{myproject}} --version={{0.1}} Configure the builddir with default values: meson setup {{build_dir}} Build the project: meson compile -C {{path/to/build_dir}} Run all tests in the project: meson test Show the help: meson --help Show version info: meson --version
meteor Full-stack JavaScript platform for building web applications. More information: https://meteor.com. Run a meteor project from its root directory in development mode: meteor Create a project under the given directory: meteor create {{path/to/directory}} Display the list of packages the project is currently using: meteor list Add a package to the project: meteor add {{package}} Remove a package from the project: meteor remove {{package}} Create a production build of the project as a tarball under the given directory: meteor build {{path/to/directory}}
mg A small, fast, and portable text editor based on emacs. More information: https://github.com/hboetes/mg. Open a file for editing: mg {{path/to/file}} Open a file at a specified line number: mg +{{line_number}} {{path/to/file}} Open files in a read-only mode: mg -R {{path/to/file1 path/to/file2 ...}} Disable ~ backup files while editing: mg -n {{path/to/file}}
mh_copyright Adjust copyright headers for MATLAB or Octave code. More information: https://misshit.org. Update the year (range) to include the current year for the specified files: mh_copyright --primary-entity="{{entity}}" --update-year {{path/to/file_or_directory1.m path/to/file_or_director2.m ...}} Update the year (range) to include the current year for all files: mh_copyright --primary-entity="{{entity}}" --update-year
mh_lint Attempt to find bugs in MATLAB or Octave code. Please note that this tool is neither sound nor complete. More information: https://misshit.org. Check the current directory: mh_lint Check a specific directory recursively: mh_lint {{path/to/directory}} Check a MATLAB file: mh_lint {{path/to/file.m}} Check an Octave file: mh_lint --octave {{path/to/file.m}}
mh_metric Calculate and enforce code metrics for MATLAB or Octave code. More information: https://misshit.org. Print the code metrics for the specified files: mh_metric {{path/to/file1.m path/to/file2.m ...}} Print the code metrics for the specified Octave files: mh_metric --octave {{path/to/file1.m path/to/file2.m ...}} Print the code metrics for the specified directory recursively: mh_metric {{path/to/directory}} Print the code metrics for the current directory: mh_metric Print the code metrics report in HTML or JSON format: mh_metric --{{html|json}} {{path/to/output_file}}
micro Micro is a modern and intuitive terminal-based text editor. You can use your keyboard, but also your mouse to navigate and/or select text. More information: https://micro-editor.github.io. Open a file: micro {{path/to/file}} Save a file: Ctrl + S Cut the entire line: Ctrl + K Search for a pattern in the file (press Ctrl + N/Ctrl + P to go to next/previous match): Ctrl + F "{{pattern}}" <Enter> Execute a command: Ctrl + E {{command}} <Enter>
mid3v2 Edit audio tags. See also: id3v2. More information: https://manned.org/mid3v2.1. List all supported ID3v2.3 or ID3v2.4 frames and their meanings: id3v2 --list-frames {{path/to/file1.mp3 path/to/file2.mp3 ...}} List all supported ID3v1 numeric genres: id3v2 --list-genres {{path/to/file1.mp3 path/to/file2.mp3 ...}} List all tags in specific files: id3v2 --list {{path/to/file1.mp3 path/to/file2.mp3 ...}} Set specific artist, album, or song information: id3v2 {{--artist|--album|--song}}={{string}} {{path/to/file1.mp3 path/to/file2.mp3 ...}} Set specific picture information: id3v2 --picture={{filename:description:image_type:mime_type}} {{path/to/file1.mp3 path/to/file2.mp3 ...}} Set specific year information: id3v2 --year={{YYYY}} {{path/to/file1.
middleman Static site generator written in Ruby. More information: https://middlemanapp.com/. Create a new Middleman project: middleman init "{{project_name}}" Start local server for current project on port 4567: middleman server Start local server for current project on a specified port: middleman server -p "{{port}}" Build the project in the current directory to prepare for deployment: bundle exec middleman build Deploy the Middleman project in the current directory: middleman deploy
minetest Multiplayer infinite-world block sandbox. See also minetestserver, the server-only binary. More information: https://wiki.minetest.net/Minetest. Start Minetest in client mode: minetest Start Minetest in server mode by hosting a specific world: minetest --server --world {{name}} Write logs to a specific file: minetest --logfile {{path/to/file}} Only write errors to the console: minetest --quiet
minetestserver Multiplayer infinite-world block sandbox server. See also minetest, the graphical client. More information: https://wiki.minetest.net/Setting_up_a_server. Start the server: minetestserver List available worlds: minetestserver --world list Specify the world name to load: minetestserver --world {{world_name}} List the available game IDs: minetestserver --gameid list Specify a game to use: minetestserver --gameid {{game_id}} Listen on a specific port: minetestserver --port {{34567}} Migrate to a different data backend: minetestserver --migrate {{sqlite3|leveldb|redis}} Start an interactive terminal after starting the server: minetestserver --terminal
mingle Bundle the edges of a graph layout. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://www.graphviz.org/pdf/mingle.1.pdf. Bundle the edges of one or more graph layouts (that already have layout information): mingle {{path/to/layout1.gv}} {{path/to/layout2.gv ...}} > {{path/to/output.gv}} Perform layout, bundling, and output to a picture with one command: dot {{path/to/input.gv}} | mingle | dot -T {{png}} > {{path/to/output.png}} Display help for mingle: mingle -?
minifab Utility tool that automates the setup and deployment of Hyperledger Fabric networks. More information: https://github.com/hyperledger-labs/minifabric. Bring up the default Hyperledger Fabric network: minifab up -i {{minifab_version}} Bring down the Hyperledger Fabric network: minifab down Install chaincode onto a specified channel: minifab install -n {{chaincode_name}} Install a specific chaincode version onto a channel: minifab install -n {{chaincode_name}} -v {{chaincode_version}} Initialize the chaincode after installation/upgrade: minifab approve,commit,initialize,discover Invoke a chaincode method with the specified arguments: minifab invoke -n {{chaincode_name}} -p '"{{method_name}}", "{{argument1}}", "{{argument2}}", .
minikube Tool to run Kubernetes locally. More information: https://github.com/kubernetes/minikube. Start the cluster: minikube start Get the IP address of the cluster: minikube ip Access a service named my_service exposed via a node port and get the URL: minikube service {{my_service}} --url Open the Kubernetes dashboard in a browser: minikube dashboard Stop the running cluster: minikube stop Delete the cluster: minikube delete Connect to LoadBalancer services: minikube tunnel
miniserve Simple HTTP file server. More information: https://github.com/svenstaro/miniserve. Serve a directory: miniserve {{path/to/directory}} Serve a single file: miniserve {{path/to/file}} Serve a directory using HTTP basic authentication: miniserve --auth {{username}}:{{password}} {{path/to/directory}}
minisign A dead simple tool to sign files and verify signatures. More information: https://jedisct1.github.io/minisign/. Generate a new keypair at the default location: minisign -G Sign a file: minisign -Sm {{path/to/file}} Sign a file, adding a trusted (signed) and an untrusted (unsigned) comment in the signature: minisign -Sm {{path/to/file}} -c "{{Untrusted comment}}" -t "{{Trusted comment}}" Verify a file and the trusted comments in its signature using the specified public key file: minisign -Vm {{path/to/file}} -p {{path/to/publickey.
mitmdump View, record, and programmatically transform HTTP traffic. The command-line counterpart to mitmproxy. More information: https://docs.mitmproxy.org/stable/overview-tools/#mitmdump. Start a proxy and save all output to a file: mitmdump -w {{path/to/file}} Filter a saved traffic file to just POST requests: mitmdump -nr {{input_filename}} -w {{output_filename}} "{{~m post}}" Replay a saved traffic file: mitmdump -nc {{path/to/file}}
mitmproxy An interactive man-in-the-middle HTTP proxy. See also: mitmweb. More information: https://docs.mitmproxy.org/stable/concepts-options. Start mitmproxy with default settings: mitmproxy Start mitmproxy bound to a custom address and port: mitmproxy --listen-host {{ip_address}} --listen-port {{port}} Start mitmproxy using a script to process traffic: mitmproxy --scripts {{path/to/script.py}} Export the logs with SSL/TLS master keys to external programs (wireshark, etc.): SSLKEYLOGFILE="{{path/to/file}}" mitmproxy
mitmweb A web-based interactive man-in-the-middle HTTP proxy. See also: mitmproxy. More information: https://docs.mitmproxy.org/stable/concepts-options. Start mitmweb with default settings: mitmweb Start mitmweb bound to a custom address and port: mitmweb --listen-host {{ip_address}} --listen-port {{port}} Start mitmweb using a script to process traffic: mitmweb --scripts {{path/to/script.py}}
mix Mix is a build tool that provides tasks for creating, compiling, and testing Elixir projects, managing its dependencies, and more. More information: https://hexdocs.pm/mix. Execute a particular file: mix run {{my_script.exs}} Create a new project: mix new {{project_name}} Compile project: mix compile Run project tests: mix test List all mix commands: mix help
mixxx Free and open source cross-platform DJ software. More information: https://mixxx.org/manual/latest/chapters/appendix.html#command-line-options. Start the Mixxx GUI in fullscreen: mixxx --fullScreen Start in safe developer mode to debug a crash: mixxx --developer --safeMode Debug a malfunction: mixxx --debugAssertBreak --developer --loglevel trace Start Mixxx using the specified settings file: mixxx --resourcePath {{mixxx/res/controllers}} --settingsPath {{path/to/settings-file}} Debug a custom controller mapping: mixxx --controllerDebug --resourcePath {{path/to/mapping-directory}} Show command-line help: mixxx --help
mk Task runner for targets described in Mkfile. Mostly used to control the compilation of an executable from source code. More information: http://doc.cat-v.org/plan_9/4th_edition/papers/mk. Call the first target specified in the Mkfile (usually named “all”): mk Call a specific target: mk {{target}} Call a specific target, executing 4 jobs at a time in parallel: NPROC=4 mk {{target}} Force mking of a target, even if source files are unchanged: mk -w{{target}} {{target}}
mkcert Tool for making locally-trusted development certificates. More information: https://github.com/FiloSottile/mkcert. Install the local CA in the system trust store: mkcert -install Generate certificate and private key for a given domain: mkcert {{example.org}} Generate certificate and private key for multiple domains: mkcert {{example.org}} {{myapp.dev}} {{127.0.0.1}} Generate wildcard certificate and private key for a given domain and its subdomains: mkcert "{{*.example.it}}" Uninstall the local CA: mkcert -uninstall
mkdir Create directories and set their permissions. More information: https://www.gnu.org/software/coreutils/mkdir. Create specific directories: mkdir {{path/to/directory1 path/to/directory2 ...}} Create specific directories and their [p]arents if needed: mkdir -p {{path/to/directory1 path/to/directory2 ...}} Create directories with specific permissions: mkdir -m {{rwxrw-r--}} {{path/to/directory1 path/to/directory2 ...}}
mkdocs Project documentation with Markdown. More information: https://www.mkdocs.org. Create a new mkdocs project: mkdocs new {{project_name}} Serve the project in the current directory using the mkdocs dev-server: mkdocs serve Build the documentation in the current directory: mkdocs build Deploy the documentation in the current directory to GitHub pages: mkdocs gh-deploy
mkfifo Makes FIFOs (named pipes). More information: https://www.gnu.org/software/coreutils/mkfifo. Create a named pipe at a given path: mkfifo {{path/to/pipe}}
mkfile Create one or more empty files of any size. More information: https://manned.org/mkfile. Create an empty file of 15 kilobytes: mkfile -n {{15k}} {{path/to/file}} Create a file of a given size and unit (bytes, KB, MB, GB): mkfile -n {{size}}{{b|k|m|g}} {{path/to/file}} Create two files of 4 megabytes each: mkfile -n {{4m}} {{first_filename}} {{second_filename}}
mktemp Create a temporary file or directory. More information: https://ss64.com/osx/mktemp.html. Create an empty temporary file and print the absolute path to it: mktemp Create an empty temporary file with a given suffix and print the absolute path to file: mktemp --suffix "{{.ext}}" Create a temporary directory and print the absolute path to it: mktemp -d
mktorrent Create BitTorrent metainfo files. More information: https://github.com/Rudde/mktorrent. Create a torrent with 2^21 KB as the piece size: mktorrent -a {{tracker_announce_url}} -l {{21}} -o {{path/to/example.torrent}} {{path/to/file_or_directory}} Create a private torrent with a 2^21 KB piece size: mktorrent -p -a {{tracker_announce_url}} -l {{21}} -o {{path/to/example.torrent}} {{path/to/file_or_directory}} Create a torrent with a comment: mktorrent -c "{{comment}}" -a {{tracker_announce_url}} -l {{21}} -o {{path/to/example.torrent}} {{path/to/file_or_directory}} Create a torrent with multiple trackers: mktorrent -a {{tracker_announce_url,tracker_announce_url_2}} -l {{21}} -o {{path/to/example.
mkvmerge Merge and extract multimedia streams. More information: https://mkvtoolnix.download/doc/mkvmerge.html. Display information about a Matroska file: mkvmerge --identify {{path/to/file.mkv}} Extract the audio from track 1 of a specific file: mkvextract tracks {{path/to/file.mkv}} {{1}}:{{path/to/output.webm}} Extract the subtitle from track 3 of a specific file: mkvextract tracks {{path/to/file.mkv}} {{3}}:{{path/to/subs.srt}} Add a subtitle track to a file: mkvmerge --output {{path/to/output.mkv}} {{path/to/file.mkv}} {{path/to/subs.srt}}
mlr Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON. More information: https://johnkerl.org/miller/doc. Pretty-print a CSV file in a tabular format: mlr --icsv --opprint cat {{example.csv}} Receive JSON data and pretty print the output: echo '{"hello":"world"}' | mlr --ijson --opprint cat Sort alphabetically on a field: mlr --icsv --opprint sort -f {{field}} {{example.csv}} Sort in descending numerical order on a field: mlr --icsv --opprint sort -nr {{field}} {{example.
mm2gv Convert a graph from Matrix Market mm format to gv format. Converters: gml2gv, gv2gml, gv2gxl, gxl2gv, graphml2gv & mm2gv. More information: https://graphviz.org/pdf/mm2gv.1.pdf. Convert a graph from mm to gv format: mm2gv -o {{output.gv}} {{input.mm}} Convert a graph using stdin and stdout: cat {{input.mm}} | mm2gv > {{output.gv}} Display help: mm2gv -?
mmdc CLI for mermaid, a diagram generation tool with a domain-specific language. A mermaid definition file is taken as input and a SVG, PNG, or PDF file is generated as output. More information: https://mermaid-js.github.io/mermaid/. Convert a file to the specified format (automatically determined from the file extension): mmdc --input {{input.mmd}} --output {{output.svg}} Specify the theme of the chart: mmdc --input {{input.mmd}} --output {{output.svg}} --theme {{forest|dark|neutral|default}} Specify the background color of the chart (e.
mmls Display the partition layout of a volume system. More information: https://wiki.sleuthkit.org/index.php?title=Mmls. Display the partition table stored in an image file: mmls {{path/to/image_file}} Display the partition table with an additional column for the partition size: mmls -B -i {{path/to/image_file}} Display the partition table in a split EWF image: mmls -i ewf {{image.e01}} {{image.e02}} Display nested partition tables: mmls -t {{nested_table_type}} -o {{offset}} {{path/to/image_file}}
mmv Move and rename files in bulk. More information: https://manned.org/mmv.1. Rename all files with a certain extension to a different extension: mmv "*{{.old_extension}}" "#1{{.new_extension}}" Copy report6part4.txt to ./french/rapport6partie4.txt along with all similarly named files: mmv -c "{{report*part*.txt}}" "{{./french/rapport#1partie#2.txt}}" Append all .txt files into one file: mmv -a "{{*.txt}}" "{{all.txt}}" Convert dates in filenames from “M-D-Y” format to “D-M-Y” format: mmv "{{[0-1][0-9]-[0-3][0-9]-[0-9][0-9][0-9][0-9].txt}}" "{{#3#4-#1#2-#5#6#7#8.txt}}"
mocha Execute Mocha JavaScript test runner. More information: https://mochajs.org. Run tests with default configuration or as configured in mocha.opts: mocha Run tests contained at a specific location: mocha {{directory/with/tests}} Run tests that match a specific grep pattern: mocha --grep {{regular_expression}} Run tests on changes to JavaScript files in the current directory and once initially: mocha --watch Run tests with a specific reporter: mocha --reporter {{reporter}}
mods AI for the command line, built for pipelines. More information: https://github.com/charmbracelet/mods. Ask a generic question: mods "{{write me a poem about platypuses}}" Open settings in your $EDITOR: mods --settings Ask for comments on your code, in markdown format: mods --format "{{what are your thoughts on improving this code?}}" < {{path/to/file}} Ask for help with your documentation, in markdown format: mods --format "{{write a new section to this readme for a feature that sends you a free rabbit if you hit r}}" < {{README.
moe A WYSIWYG text editor for ISO-8859-15 encoded text. More information: https://www.gnu.org/software/moe/moe.html. Open moe and create a backup file (file~) when saving edits: moe {{path/to/file}} Open a file as read-only: moe --read-only {{path/to/file}} Edit a file without creating backups: moe --no-backup {{path/to/file}} Edit a file ignoring case in searches: moe --ignore-case {{path/to/file}} Save and Quit: Ctrl + X
mogrify Perform operations on multiple images, such as resizing, cropping, flipping, and adding effects. Changes are applied directly to the original file. More information: https://imagemagick.org/script/mogrify.php. Resize all JPEG images in the directory to 50% of their initial size: mogrify -resize {{50%}} {{*.jpg}} Resize all images starting with “DSC” to 800x600: mogrify -resize {{800x600}} {{DSC*}} Convert all PNGs in the directory to JPEG: mogrify -format {{jpg}} {{*.png}} Halve the saturation of all image files in the current directory: mogrify -modulate {{100,50}} {{*}}
molecule Molecule helps testing Ansible roles. More information: https://molecule.readthedocs.io. Create a new Ansible role: molecule init role --role-name {{role_name}} Run tests: molecule test Start the instance: molecule create Configure the instance: molecule converge List scenarios of the instance: molecule matrix converge Log in into the instance: molecule login
mongo The legacy MongoDB shell. See mongosh for the new shell. Note: all connection options can be replaced with one string: mongodb://user@host:port/db_name?authSource=authdb_name. More information: https://docs.mongodb.com/manual/reference/program/mongo. Connect to a local database on the default port (mongodb://localhost:27017): mongo Connect to a database: mongo --host {{host}} --port {{port}} {{db_name}} Authenticate using the specified username on the specified database (you will be prompted for a password): mongo --host {{host}} --port {{port}} --username {{username}} --authenticationDatabase {{authdb_name}} {{db_name}}
mongod The MongoDB database server. More information: https://docs.mongodb.com/manual/reference/program/mongod. Specify the storage directory (default: /data/db on Linux and MacOS, C:\data\db on Windows): mongod --dbpath {{path/to/directory}} Specify a config file: mongod --config {{path/to/file}} Specify the port to listen on (default: 27017): mongod --port {{port}} Specify the database profiling level. 0 is off, 1 is only slow operations, 2 is all (default: 0): mongod --profile {{0|1|2}}
mongodump Utility to export the contents of a MongoDB instance. More information: https://docs.mongodb.com/database-tools/mongodump/. Create a dump of all databases (this will place the files inside a directory called “dump”): mongodump Specify an output location for the dump: mongodump --out {{path/to/directory}} Create a dump of a given database: mongodump --db {{database_name}} Create a dump of a given collection within a given database: mongodump --collection {{collection_name}} --db {{database_name}} Connect to a given host running on a given port, and create a dump: mongodump --host {{host}} --port {{port}}
mongoexport Produce exports of data stored in a MongoDB instance formatted as JSON or CSV. More information: https://docs.mongodb.com/database-tools/mongoexport/. Export a collection to stdout, formatted as JSON: mongoexport --uri={{connection_string}} --collection={{collection_name}} Export the documents in the specified collection that match a query to a JSON file: mongoexport --db={{database_name}} --collection={{collection_name}} --query="{{query_object}}" --out={{path/to/file.json}} Export documents as a JSON array instead of one object per line: mongoexport --collection={{collection_name}} --jsonArray Export documents to a CSV file: mongoexport --collection={{collection_name}} --type={{csv}} --fields="{{field1,field2,.
mongoimport Imports content from a JSON, CSV, or TSV file into a MongoDB database. More information: https://docs.mongodb.com/database-tools/mongoimport/. Import a JSON file into a specific collection: mongoimport --file={{path/to/file.json}} --uri={{mongodb_uri}} --collection={{collection_name}} Import a CSV file, using the first line of the file to determine field names: mongoimport --type={{csv}} --file={{path/to/file.csv}} --db={{database_name}} --collection={{collection_name}} Import a JSON array, using each element as a separate document: mongoimport --jsonArray --file={{path/to/file.json}} Import a JSON file using a specific mode and a query to match existing documents: mongoimport --file={{path/to/file.
mongorestore Utility to import a collection or database from a binary dump into a MongoDB instance. More information: https://docs.mongodb.com/database-tools/mongorestore/. Import a BSON data dump from a directory to a MongoDB database: mongorestore --db {{database_name}} {{path/to/directory}} Import a BSON data dump from a directory to a given database in a MongoDB server host, running at a given port, with user authentication (user will be prompted for password): mongorestore --host {{database_host:port}} --db {{database_name}} --username {{username}} {{path/to/directory}} --password
mongosh A new shell for MongoDB, replacement for mongo. Note: all connection options can be replaced with one string: mongodb://user@host:port/db_name?authSource=authdb_name. More information: https://www.mongodb.com/docs/mongodb-shell. Connect to a local database on the default port (mongodb://localhost:27017): mongosh Connect to a database: mongosh --host {{host}} --port {{port}} {{db_name}} Authenticate using the specified username on the specified database (you will be prompted for a password): mongosh --host {{host}} --port {{port}} --username {{username}} --authenticationDatabase {{authdb_name}} {{db_name}}
monodevelop Cross platform IDE for C#, F# and more. More information: https://www.monodevelop.com/. Start MonoDevelop: monodevelop Open a specific file: monodevelop {{path/to/file}} Open a specific file with the caret at a specific position: monodevelop {{path/to/file}};{{line_number}};{{column_number}} Force opening a new window instead of switching to an existing one: monodevelop --new-window Disable redirection of stdout and stderr to a log file: monodevelop --no-redirect Enable performance monitoring: monodevelop --perf-log
monodis The Mono Common Intermediate Language (CIL) disassembler. More information: https://www.mono-project.com/docs/tools+libraries/tools/monodis/. Disassemble an assembly to textual CIL: monodis {{path/to/assembly.exe}} Save the output to a file: monodis --output={{path/to/output.il}} {{path/to/assembly.exe}} Show information about an assembly: monodis --assembly {{path/to/assembly.dll}} List the references of an assembly: monodis --assemblyref {{path/to/assembly.exe}} List all the methods in an assembly: monodis --method {{path/to/assembly.exe}} Show a list of resources embedded within an assembly: monodis --manifest {{path/to/assembly.dll}} Extract all the embedded resources to the current directory: monodis --mresources {{path/to/assembly.
monop Finds and displays signatures of Types and methods inside .NET assemblies. More information: https://manned.org/monop. Show the structure of a Type built-in of the .NET Framework: monop {{System.String}} List the types in an assembly: monop -r:{{path/to/assembly.exe}} Show the structure of a Type in a specific assembly: monop -r:{{path/to/assembly.dll}} {{Namespace.Path.To.Type}} Only show members defined in the specified Type: monop -r:{{path/to/assembly.dll}} --only-declared {{Namespace.Path.To.Type}} Show private members: monop -r:{{path/to/assembly.dll}} --private {{Namespace.Path.To.Type}} Hide obsolete members: monop -r:{{path/to/assembly.
montage ImageMagick image montage tool. Tiles images into a customisable grid. More information: https://imagemagick.org/script/montage.php. Tile images into a grid, automatically resizing images larger than the grid cell size: montage {{image1.png}} {{image2.jpg}} {{imageN.png}} montage.jpg Tile images into a grid, automatically calculating the grid cell size from the largest image: montage {{image1.png}} {{image2.jpg}} {{imageN.png}} -geometry +0+0 montage.jpg Set the grid cell size and resize images to fit it before tiling: montage {{image1.png}} {{image2.
more Open a file for interactive reading, allowing scrolling and search. More information: https://manned.org/more. Open a file: more {{path/to/file}} Open a file displaying from a specific line: more +{{line_number}} {{path/to/file}} Display help: more --help Go to the next page: <Space> Search for a string (press n to go to the next match): /{{something}} Exit: q Display help about interactive commands: h
moro Track work time. More information: https://moro.js.org. Invoke moro without parameters, to set the current time as the start of the working day: moro Specify a custom time for the start of the working day: moro hi {{09:30}} Invoke moro without parameters a second time, to set the current time at the end of the working day: moro Specify a custom time for the end of the working day: moro bye {{17:30}}
mosh Mobile Shell (mosh) is a robust and responsive replacement for SSH. mosh persists connections to remote servers while roaming between networks. More information: https://mosh.org. Connect to a remote server: mosh {{username}}@{{remote_host}} Connect to a remote server with a specific identity (private key): mosh --ssh="ssh -i {{path/to/key_file}}" {{username}}@{{remote_host}} Connect to a remote server using a specific port: mosh --ssh="ssh -p {{2222}}" {{username}}@{{remote_host}} Run a command on a remote server: mosh {{remote_host}} -- {{command -with -flags}}
mosquitto An MQTT broker. More information: https://mosquitto.org/. Start Mosquitto: mosquitto Specify a configuration file to use: mosquitto --config-file {{path/to/file.conf}} Listen on a specific port: mosquitto --port {{8883}} Daemonize by forking into the background: mosquitto --daemon
mosquitto_passwd Manage password files for mosquitto. See also mosquitto, the MQTT server that this manages. More information: https://mosquitto.org/man/mosquitto_passwd-1.html. Add a new user to a password file (will prompt to enter the password): mosquitto_passwd {{path/to/password_file}} {{username}} Create the password file if it doesn’t already exist: mosquitto_passwd -c {{path/to/password_file}} {{username}} Delete the specified username instead: mosquitto_passwd -D {{path/to/password_file}} {{username}} Upgrade an old plain-text password file to a hashed password file: mosquitto_passwd -U {{path/to/password_file}}
mosquitto_pub A simple MQTT version 3.1.1 client that will publish a single message on a topic and exit. More information: https://mosquitto.org/man/mosquitto_pub-1.html. Publish a temperature value of 32 on the topic sensors/temperature to 192.168.1.1 (defaults to localhost) with Quality of Service (QoS) set to 1: mosquitto_pub -h {{192.168.1.1}} -t {{sensors/temperature}} -m {{32}} -q {{1}} Publish timestamp and temperature data on the topic sensors/temperature to a remote host on a non-standard port: mosquitto_pub -h {{192.
mosquitto_sub A simple MQTT version 3.1.1 client that will subscribe to topics and print the messages that it receives. More information: https://mosquitto.org/man/mosquitto_sub-1.html. Subscribe to the topic sensors/temperature information with Quality of Service (QoS) set to 1. (The default hostname is localhost and port 1883): mosquitto_sub -t {{sensors/temperature}} -q {{1}} Subscribe to all broker status messages publishing on iot.eclipse.org port 1885 and print published messages verbosely: mosquitto_sub -v -h "iot.eclipse.org" -p 1885 -t {{\$SYS/#}}
most Open one or several files for interactive reading, allowing scrolling and search. More information: https://manned.org/most. Open a file: most {{path/to/file}} Open several files: most {{path/to/file1}} {{path/to/file2}} Open a file at the first occurrence of “string”: most {{path/to/file}} +/{{string}} Move through opened files: :O n Jump to the 100th line: {{100}}j Edit current file: e Split the current window in half: <CTRL-x> o Exit: Q
mount Provides access to an entire filesystem in one directory. More information: https://manned.org/mount.8. Show all mounted filesystems: mount Mount a device to a directory: mount -t {{filesystem_type}} {{path/to/device_file}} {{path/to/target_directory}} Create a specific directory if it does not exist and mount a device to it: mount --mkdir {{path/to/device_file}} {{path/to/target_directory}} Mount a device to a directory for a specific user: mount -o uid={{user_id}},gid={{group_id}} {{path/to/device_file}} {{path/to/target_directory}} Mount a CD-ROM device (with the filetype ISO9660) to /cdrom (readonly): mount -t {{iso9660}} -o ro {{/dev/cdrom}} {{/cdrom}}
mozillavpn A Virtual Private Network from the makers of Firefox. More information: https://github.com/mozilla-mobile/mozilla-vpn-client/wiki/Command-line-interface. Log in with an interactive prompt: mozillavpn login Connect to Mozilla VPN: mozillavpn activate Display the connection status: mozillavpn status List available servers: mozillavpn servers Select a specific server: mozillavpn select {{server_name}} Disconnect from Mozilla VPN: mozillavpn deactivate Log out: mozillavpn logout Display help for a subcommand: mozillavpn {{subcommand}} --help
mp3info Viewer/editor for ID3v1 (but not ID3v2) tags of MP3 files. More information: http://www.ibiblio.org/mp3info. Show all ID3v1 tags of a specific MP3 file: mp3info {{path/to/file.mp3}} Edit ID3v1 tags interactively: mp3info -i {{path/to/file.mp3}} Set values for ID3v1 tags in a specific MP3 file: mp3info -a "{{artist_name}}" -t "{{song_title}}" -l "{{album_title}}" -y {{year}} -c "{{comment_text}}" {{path/to/file.mp3}} Set the number of the track in the album for a specific MP3 file: mp3info -n {{track_number}} {{path/to/file.
mp4box MPEG-4 Systems Toolbox - Muxes streams into MP4 container. More information: https://gpac.wp.imt.fr/mp4box. Display information about an existing MP4 file: mp4box -info {{path/to/file}} Add an SRT subtitle file into an MP4 file: mp4box -add {{input_subs.srt}}:lang=eng -add {{input.mp4}} {{output.mp4}} Combine audio from one file and video from another: mp4box -add {{input1.mp4}}#audio -add {{input2.mp4}}#video {{output.mp4}}
mpc Music Player Client. Program for controlling the Music Player Daemon (MPD). More information: https://www.musicpd.org/clients/mpc. Toggle play/pause: mpc toggle Stop playing: mpc stop Show information about the currently playing song: mpc status Play next song: mpc next Play previous song: mpc prev Forward or rewind the currently playing song: mpc [+-]{{seconds}}
mpd Music Player Daemon. More information: https://www.musicpd.org/. Start MPD: mpd Start MPD but don’t read from the configuration file: mpd --no-config Start MPD and don’t detach it from the console: mpd --no-daemon Kill the currently running MPD session: mpd --kill
mpg321 High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2, and 3. Mpg321 was written (sometime in 1999) to be a drop-in replacement for the (previously) non-free mpg123 player. More information: http://mpg321.sourceforge.net/. Play an audio source exactly N times (N=0 means forever): mpg321 -l {{N}} {{path/to/file_a|URL}} {{path/to/file_b|URL}} {{...}} Play a directory recursively: mpg321 -B {{path/to/directory}} Enable Basic Keys ( * or / - Increase or decrease volume, n - Skip song, m - Mute/unmute.
mplayer Cross-platform multimedia player. More information: https://mplayerhq.hu/DOCS/HTML/en/commandline.html. Play the specified file or URL: mplayer {{path/to/file|url}} Play multiple files: mplayer {{path/to/file1 path/to/file2 ...}} Play a specific file repeatedly: mplayer -loop {{0}} {{path/to/file}} Pause playback: <Space> Quit mplayer: <Escape> Seek backward or forward 10 seconds: <Left> or <Right>
mpv A audio/video player based on MPlayer. More information: https://mpv.io. Play a video or audio file: mpv {{path/to/file}} Play a video or audio file from a URL: mpv '{{https://www.youtube.com/watch?v=dQw4w9WgXcQ}}' Jump backward/forward 5 seconds: LEFT <or> RIGHT Jump backward/forward 1 minute: DOWN <or> UP Decrease or increase playback speed by 10%: [ <or> ] Play a file at a specified speed (0.01 to 100, default 1): mpv --speed {{speed}} {{path/to/file}} Play a file using a profile defined in the mpv.
mr Manage all of your version control repositories at once. More information: https://myrepos.branchable.com. Register a repository: mr register Update repositories in 5 concurrent jobs: mr -j{{5}} update Print the status of all repositories: mr status Checkout all repositories to the latest version: mr checkout
msbuild The Microsoft build tool for Visual Studio project solutions. More information: https://learn.microsoft.com/visualstudio/msbuild. Build the first project file in the current directory: msbuild Build a specific project file: msbuild {{path/to/project_file}} Set one or more semicolon-separated targets to build: msbuild {{path/to/project_file}} /target:{{targets}} Set one or more semicolon-separated properties: msbuild {{path/to/project_file}} /property:{{name=value}} Set the build tools version to use: msbuild {{path/to/project_file}} /toolsversion:{{version}} Display detailed information at the end of the log about how the project was configured: msbuild {{path/to/project_file}} /detailedsummary
mscore This command is an alias of musescore. More information: https://musescore.org/handbook/command-line-options. View documentation for the original command: tldr musescore
msfvenom Manually generate payloads for metasploit. More information: https://github.com/rapid7/metasploit-framework/wiki/How-to-use-msfvenom. List payloads: msfvenom -l payloads List formats: msfvenom -l formats Show payload options: msfvenom -p {{payload}} --list-options Create an ELF binary with a reverse TCP handler: msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST={{local_ip}} LPORT={{local_port}} -f elf -o {{path/to/binary}} Create an EXE binary with a reverse TCP handler: msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST={{local_ip}} LPORT={{local_port}} -f exe -o {{path/to/binary.exe}} Create a raw bash with a reverse TCP handler: msfvenom -p cmd/unix/reverse_bash LHOST={{local_ip}} LPORT={{local_port}} -f raw
msmtp An SMTP client. It reads text from stdin and sends it to an SMTP server. More information: https://marlam.de/msmtp. Send an email using the default account configured in ~/.msmtprc: echo "{{Hello world}}" | msmtp {{to@example.org}} Send an email using a specific account configured in ~/.msmtprc: echo "{{Hello world}}" | msmtp --account={{account_name}} {{to@example.org}} Send an email without a configured account. The password should be specified in the ~/.msmtprc file: echo "{{Hello world}}" | msmtp --host={{localhost}} --port={{999}} --from={{from@example.
mtr Matt’s Traceroute: combined traceroute and ping tool. More information: https://www.bitwizard.nl/mtr/. Traceroute to a host and continuously ping all intermediary hops: mtr {{example.com}} Disable IP address and host name mapping: mtr --no-dns {{example.com}} Generate output after pinging each hop 10 times: mtr --report-wide {{example.com}} Force IP IPv4 or IPV6: mtr -4 {{example.com}} Wait for a given time (in seconds) before sending another packet to the same hop: mtr --interval {{10}} {{example.
mu Index and search emails from a local Maildir. More information: https://man.cx/mu. Initialize the email database, optionally specifying the Maildir directory and email addresses: mu init --maildir={{path/to/directory}} --my-address={{name@example.com}} Index new emails: mu index Find messages using a specific keyword (in message body, subject, sender, …): mu find {{keyword}} Find messages to Alice with subject jellyfish containing the words apples or oranges: mu find to:{{alice}} subject:{{jellyfish}} {{apples}} OR {{oranges}} Find unread messages about words starting with soc (the * only works at the end of the search term) in the Sent Items folder: mu find 'subject:{{soc}}*' flag:{{unread}} maildir:'/{{Sent Items}}'
mullvad CLI client for Mullvad VPN. More information: https://mullvad.net/. Link your mullvad account with the specified account number: mullvad account set {{account_number}} Enable LAN access while VPN is on: mullvad lan set allow Establish the VPN tunnel: mullvad connect Check status of VPN tunnel: mullvad status
multipass Manage Ubuntu virtual machines using native hypervisors. More information: https://multipass.run/. List the aliases that can be used to launch an instance: multipass find Launch a new instance, set its name and use a cloud-init configuration file: multipass launch -n {{instance_name}} --cloud-init {{configuration_file}} List all the created instances and some of their properties: multipass list Start a specific instance by name: multipass start {{instance_name}} Show the properties of an instance: multipass info {{instance_name}}
multitail Extension of tail. More information: https://manned.org/multitail. Tail all files matching a pattern in a single stream: multitail -Q 1 '{{pattern}}' Tail all files in a directory in a single stream: multitail -Q 1 '{{path/to/directory}}/*' Automatically add new files to a window: multitail -Q {{pattern}} Show 5 logfiles while merging 2 and put them in 2 columns with only one in the left column: multitail -s 2 -sn 1,3 {{mergefile}} -I {{file1}} {{file2}} {{file3}} {{file4}}
mumble Low-latency, high quality voice chat software. More information: https://www.mumble.info. Open Mumble: mumble Open Mumble and immediately connect to a server: mumble mumble://{{username}}@{{example.com}} Open Mumble and immediately connect to a password protected server: mumble mumble://{{username}}:{{password}}@{{example.com}} Mute/unmute the microphone in a running Mumble instance: mumble rpc {{mute|unmute}} Mute/unmute the microphone and the audio output of Mumble: mumble rpc {{deaf|undeaf}}
mupdf MuPDF is a lightweight PDF, XPS, and E-book viewer. More information: https://www.mupdf.com. Open a PDF on the first page: mupdf {{path/to/file}} Open a PDF on page 3: mupdf {{path/to/file}} {{3}} Open a password secured PDF: mupdf -p {{password}} {{path/to/file}} Open a PDF with an initial zoom level, specified as DPI, of 72: mupdf -r {{72}} {{path/to/file}} Open a PDF with inverted color: mupdf -I {{path/to/file}} Open a PDF tinted red #FF0000 (hexadecimal color syntax RRGGBB): mupdf -C {{FF0000}}
musescore MuseScore 3 sheet music editor. More information: https://musescore.org/en/handbook/3/command-line-options. Use a specific audio driver: musescore --audio-driver {{jack|alsa|portaudio|pulse}} Set the MP3 output bitrate in kbit/s: musescore --bitrate {{bitrate}} Start MuseScore in debug mode: musescore --debug Enable experimental features, such as layers: musescore --experimental Export the given file to the specified output file. The file type depends on the given extension: musescore --export-to {{output_file}} {{input_file}} Print a diff between the given scores: musescore --diff {{path/to/file1}} {{path/to/file2}}
musl-gcc A wrapper around gcc that automatically sets options for linking against musl libc. All options specified are passed directly to gcc. More information: https://manned.org/musl-gcc. View documentation for gcc: tldr gcc
mutagen Real-time file synchronization and network forwarding tool. More information: https://mutagen.io. Start a synchronization session between a local directory and a remote host: mutagen sync create --name={{session_name}} {{/path/to/local/directory/}} {{user}}@{{host}}:{{/path/to/remote/directory/}} Start a synchronization session between a local directory and a Docker container: mutagen sync create --name={{session_name}} {{/path/to/local/directory/}} docker://{{user}}@{{container_name}}{{/path/to/remote/directory/}} Stop a running session: mutagen sync terminate {{session_name}} Start a project: mutagen project start Stop a project: mutagen project terminate List running sessions for the current project: mutagen project list
mutool Convert PDF files, query information and extract data. More information: https://mupdf.readthedocs.io/en/latest/mupdf-command-line.html. Convert pages 1-10 into 10 PNGs (Note: %nd in the output placeholder must be replaced with a print modifier like %d or %2d): mutool convert -o {{path/to/output%nd.png}} {{path/to/input.pdf}} {{1-10}} Convert pages 2, 3 and 5 of a PDF into text in stdout: mutool draw -F {{txt}} {{path/to/input.pdf}} {{2,3,5}} Concatenate multiple PDF files: mutool merge -o {{path/to/output.pdf}} {{path/to/input1.pdf path/to/input2.pdf .
mutt Command-line email client. More information: http://mutt.org. Open the specified mailbox: mutt -f {{mailbox}} Send an email and specify a subject and a cc recipient: mutt -s {{subject}} -c {{cc@example.com}} {{recipient@example.com}} Send an email with files attached: mutt -a {{file1}} {{file2}} -- {{recipient@example.com}} Specify a file to include as the message body: mutt -i {{path/to/file}} {{recipient@example.com}} Specify a draft file containing the header and the body of the message, in RFC 5322 format: mutt -H {{path/to/file}} {{recipient@example.
mv Move or rename files and directories. More information: https://www.gnu.org/software/coreutils/mv. Rename a file or directory when the target is not an existing directory: mv {{path/to/source}} {{path/to/target}} Move a file or directory into an existing directory: mv {{path/to/source}} {{path/to/existing_directory}} Move multiple files into an existing directory, keeping the filenames unchanged: mv {{path/to/source1 path/to/source2 ...}} {{path/to/existing_directory}} Do not prompt for confirmation before overwriting existing files: mv -f {{path/to/source}} {{path/to/target}} Prompt for confirmation before overwriting existing files, regardless of file permissions: mv -i {{path/to/source}} {{path/to/target}}
mvn Apache Maven. Tool for building and managing Java-based projects. More information: https://maven.apache.org. Compile a project: mvn compile Compile and package the compiled code in its distributable format, such as a jar: mvn package Compile and package, skipping unit tests: mvn package -DskipTests Install the built package in local maven repository. (This will invoke the compile and package commands too): mvn install Delete build artifacts from the target directory: mvn clean
mycli A command-line client for MySQL that can do auto-completion and syntax highlighting. More information: https://mycli.net. Connect to a local database on port 3306, using the current user’s username: mycli {{database_name}} Connect to a database (user will be prompted for a password): mycli -u {{username}} {{database_name}} Connect to a database on another host: mycli -h {{database_host}} -P {{port}} -u {{username}} {{database_name}}
mysql The MySQL command-line tool. More information: https://www.mysql.com/. Connect to a database: mysql {{database_name}} Connect to a database, user will be prompted for a password: mysql -u {{user}} --password {{database_name}} Connect to a database on another host: mysql -h {{database_host}} {{database_name}} Connect to a database through a Unix socket: mysql --socket {{path/to/socket.sock}} Execute SQL statements in a script file (batch file): mysql -e "source {{filename.sql}}" {{database_name}} Restore a database from a backup created with mysqldump (user will be prompted for a password): mysql --user {{user}} --password {{database_name}} < {{path/to/backup.
mysqlbinlog Utility for processing MySQL binary log files. More information: https://dev.mysql.com/doc/refman/8.0/en/mysqlbinlog.html. Show events from a specific binary log file: mysqlbinlog {{path/to/binlog}} Show entries from a binary log for a specific database: mysqlbinlog --database {{database_name}} {{path/to/binlog}} Show events from a binary log between specific dates: mysqlbinlog --start-datetime='{{2022-01-01 01:00:00}}' --stop-datetime='{{2022-02-01 01:00:00}}' {{path/to/binlog}} Show events from a binary log between specific positions: mysqlbinlog --start-position={{100}} --stop-position={{200}} {{path/to/binlog}} Show binary log from a MySQL server on the given host: mysqlbinlog --host={{hostname}} {{path/to/binlog}}
mysqlcheck Check and repair MySQL tables. More information: https://dev.mysql.com/doc/refman/8.0/en/mysqlcheck.html. Check a table: mysqlcheck --check {{table}} Check a table and provide credentials to access it: mysqlcheck --check {{table}} --user {{username}} --password {{password}} Repair a table: mysqlcheck --repair {{table}} Optimize a table: mysqlcheck --optimize {{table}}
mysqld Start the MySQL database server. More information: https://dev.mysql.com/doc/refman/en/mysqld.html. Start the MySQL database server: mysqld Start the server, printing error messages to the console: mysqld --console Start the server, saving logging output to a custom log file: mysqld --log={{path/to/file.log}} Print the default arguments and their values and exit: mysqld --print-defaults Start the server, reading arguments and values from a file: mysqld --defaults-file={{path/to/file}} Start the server and listen on a custom port: mysqld --port={{port}}
mysqldump Backups MySQL databases. See also mysql for restoring databases. More information: https://dev.mysql.com/doc/refman/en/mysqldump.html. Create a backup (user will be prompted for a password): mysqldump --user {{user}} --password {{database_name}} --result-file={{path/to/file.sql}} Backup a specific table redirecting the output to a file (user will be prompted for a password): mysqldump --user {{user}} --password {{database_name}} {{table_name}} > {{path/to/file.sql}} Backup all databases redirecting the output to a file (user will be prompted for a password): mysqldump --user {{user}} --password --all-databases > {{path/to/file.
mytop Display MySQL server performance info like top. More information: http://jeremy.zawodny.com/mysql/mytop/mytop.html. Start mytop: mytop Connect with a specified username and password: mytop -u {{user}} -p {{password}} Connect with a specified username (the user will be prompted for a password): mytop -u {{user}} --prompt Do not show any idle (sleeping) threads: mytop -u {{user}} -p {{password}} --noidle
nano Command-line text editor. An enhanced Pico clone. More information: https://nano-editor.org. Start the editor: nano Start the editor without using configuration files: nano --ignorercfiles Open specific files, moving to the next file when closing the previous one: nano {{path/to/file1 path/to/file2 ...}} Open a file and position the cursor at a specific line and column: nano +{{line}},{{column}} {{path/to/file}} Open a file and enable soft wrapping: nano --softwrap {{path/to/file}} Open a file and indent new lines to the previous line’s indentation: nano --autoindent {{path/to/file}}
nasm The Netwide Assembler, a portable 80x86 assembler. More information: https://nasm.us. Assemble source.asm into a binary file source, in the (default) raw binary format: nasm {{source.asm}} Assemble source.asm into a binary file output_file, in the specified format: nasm -f {{format}} {{source.asm}} -o {{output_file}} List valid output formats (along with basic nasm help): nasm -hf Assemble and generate an assembly listing file: nasm -l {{list_file}} {{source.asm}} Add a directory (must be written with trailing slash) to the include file search path before assembling: nasm -i {{path/to/include_dir/}} {{source.
nativefier Command-line tool to create a desktop app for any web site with minimal configuration. More information: https://github.com/jiahaog/nativefier. Make a desktop app for a website: nativefier {{url}} Create a desktop app with a custom name: nativefier --name {{name}} {{url}} Use a custom icon, should be a PNG: nativefier --icon {{path/to/icon.png}} {{url}}
nbtscan Scan networks for NetBIOS name information. More information: https://github.com/resurrecting-open-source-projects/nbtscan. Scan a network for NetBIOS names: nbtscan {{192.168.0.1/24}} Scan a single IP address: nbtscan {{192.168.0.1}} Display verbose output: nbtscan -v {{192.168.0.1/24}} Display output in /etc/hosts format: nbtscan -e {{192.168.0.1/24}} Read IP addresses/networks to scan from a file: nbtscan -f {{path/to/file.txt}}
nc Netcat is a versatile utility for redirecting IO into a network stream. More information: https://manned.org/man/nc.1. Start a listener on the specified TCP port and send a file into it: nc -l -p {{port}} < {{filename}} Connect to a target listener on the specified port and receive a file from it: nc {{host}} {{port}} > {{received_filename}} Scan the open TCP ports of a specified host: nc -v -z -w {{timeout_in_seconds}} {{host}} {{start_port}}-{{end_port}}
ncc Compile a Node.js application into a single file. Supports TypeScript, binary addons and dynamic requires. More information: https://github.com/vercel/ncc. Bundle a Node.js application: ncc build {{path/to/file.js}} Bundle and minify a Node.js application: ncc build --minify {{path/to/file.js}} Bundle and minify a Node.js application and generate source maps: ncc build --source-map {{path/to/file.js}} Automatically recompile on changes to source files: ncc build --watch {{path/to/file.js}} Bundle a Node.js application into a temporary directory and run it for testing: ncc run {{path/to/file.
ncdu Disk usage analyzer with an ncurses interface. More information: https://manned.org/ncdu. Analyze the current working directory: ncdu Colorize output: ncdu --color {{dark|off}} Analyze a given directory: ncdu {{path/to/directory}} Save results to a file: ncdu -o {{path/to/file}} Exclude files that match a pattern, argument can be given multiple times to add more patterns: ncdu --exclude '{{*.txt}}'
ncmpcpp A command-line music player client for the Music Player Daemon. More information: https://rybczak.net/ncmpcpp. Connect to a music player daemon on a given host and port: ncmpcpp --host {{ip}} --port {{port}} Display metadata of the current song to console: ncmpcpp --current-song Use a specified configuration file: ncmpcpp --config {{file}} Use a different set of key bindings from a file: ncmpcpp --bindings {{file}}
ncu Find newer versions of package dependencies and check outdated npm packages locally or globally. ncu only updates dependency versions in package.json. To install the new versions, run npm install afterwards. More information: https://github.com/raineorshine/npm-check-updates. List outdated dependencies in the current directory: ncu List outdated global npm packages: ncu -g Upgrade all dependencies in the current directory: ncu -u Interactively upgrade dependencies in the current directory: ncu -i Display help: ncu -h
neato Render an image of a linear undirected network graph from a graphviz file. Layouts: dot, neato, twopi, circo, fdp, sfdp, osage & patchwork. More information: https://graphviz.org/doc/info/command.html. Render a png image with a filename based on the input filename and output format (uppercase -O): neato -T {{png}} -O {{path/to/input.gv}} Render a svg image with the specified output filename (lowercase -o): neato -T {{svg}} -o {{path/to/image.svg}} {{path/to/input.gv}} Render the output in ps, pdf, svg, fig, png, gif, jpg, json, or dot format: neato -T {{format}} -O {{path/to/input.
ned Is like grep but with powerful replace capabilities. Unlike sed, as it isn’t restricted to line oriented editing. More information: https://github.com/nevdelap/ned. Recursively search starting in the current directory, ignoring case: ned --ignore-case --recursive '{{^[dl]og}}' {{.}} Search always showing colored output: ned --colors '{{^[dl]og}}' {{.}} Search never showing colored output: ned --colors=never '{{^[dl]og}}' {{.}} Search ignoring certain files: ned --recursive --exclude '{{*.htm}}' '{{^[dl]og}}' {{.}} Simple replace: ned '{{dog}}' --replace '{{cat}}' {{.
neofetch Display information about your operating system, software and hardware. More information: https://github.com/dylanaraps/neofetch. Return the default config, and create it if it’s the first time the program runs: neofetch Trigger an info line from appearing in the output, where ‘infoname’ is the function name in the config file, e.g. memory: neofetch --{{enable|disable}} {{infoname}} Hide/Show OS architecture: neofetch --os_arch {{on|off}} Enable/Disable CPU brand in output: neofetch --cpu_brand {{on|off}}
neomutt NeoMutt command-line email client. More information: https://neomutt.org. Open the specified mailbox: neomutt -f {{path/to/mailbox}} Start writing an email and specify a subject and a cc recipient: neomutt -s "{{subject}}" -c {{cc@example.com}} {{recipient@example.com}} Send an email with files attached: neomutt -a {{path/to/file1 path/to/file2 ...}} -- {{recipient@example.com}} Specify a file to include as the message body: neomutt -i {{path/to/file}} {{recipient@example.com}} Specify a draft file containing the header and the body of the message, in RFC 5322 format: neomutt -H {{path/to/file}} {{recipient@example.
nest Command-line tool to initialize, develop, and maintain Nest applications. More information: https://docs.nestjs.com/cli/overview. Display information about installed nest version: nest info Create a new NestJS project in a directory of the same name: nest new {{project_name}} Build a specific NestJS project: nest build {{project_name}} Run a specific NestJS project: nest start {{project_name}} Import a library into the current NestJS project: nest add {{library_name}}
netcat This command is an alias of nc. View documentation for the original command: tldr nc
netlify Deploy sites and configure continuous deployment to the Netlify platform. More information: https://cli.netlify.com. Log in to the Netlify account: netlify login Deploy the contents of a directory to Netlify: netlify deploy Configure continuous deployment for a new or an existing site: netlify init Start a local dev server: netlify dev
netstat Displays network-related information such as open connections, open socket ports, etc. More information: https://man7.org/linux/man-pages/man8/netstat.8.html. List all ports: netstat --all List all listening ports: netstat --listening List listening TCP ports: netstat --tcp Display PID and program names: netstat --program List information continuously: netstat --continuous List routes and do not resolve IP addresses to hostnames: netstat --route --numeric List listening TCP and UDP ports (+ user and process if you’re root): netstat --listening --program --numeric --tcp --udp --extend
newman Collection runner for Postman. More information: https://github.com/postmanlabs/newman. Run a collection (from a file): newman run {{path/to/collection.json}} Run a collection (from a URL): newman run {{https://www.getpostman.com/collections/631643-f695cab7-6878-eb55-7943-ad88e1ccfd65-JsLv}}
newsboat An RSS/Atom feed reader for text terminals. More information: https://newsboat.org/. First import feed URLs from an OPML file: newsboat -i {{my-feeds.xml}} Alternatively, add feeds manually: echo {{http://example.com/path/to/feed}} >> "${HOME}/.newsboat/urls" Start Newsboat and refresh all feeds on startup: newsboat -r Execute a space-separated list of commands in non-interactive mode: newsboat -x {{reload print-unread ...}} See keyboard shortcuts (the most relevant are visible in the status line): ?
next React framework that uses server-side rendering for building optimized web applications. More information: https://nextjs.org/docs. Start the current application in development mode: next dev Start the current application and listen on a specific port: next dev --port {{port}} Build the current application optimized for production: next build Start the compiled application in production mode: next start Start the compiled application and listen on a specific port: next start --port {{port}}
nextclade Bioinformatics tool for virus genome alignment, clade assignment and qc checks. More information: https://docs.nextstrain.org/projects/nextclade/en/stable/user/nextclade-cli.html. Create a TSV report, auto-downloading the latest [d]ataset: nextclade run -d {{dataset_name}} {{path/to/fasta}} -t {{path/to/output_tsv}} List all available datasets: nextclade dataset list Download the latest SARS-CoV-2 dataset: nextclade dataset get --name sars-cov-2 --output-dir {{path/to/directory}} Use a downloaded [D]ataset, producing all [O]utputs: nextclade run -D {{path/to/dataset_dir}} -O {{path/to/output_dir}} {{path/to/dataset_dir/sequences.fasta}} Run on multiple files: nextclade run -d {{dataset_name}} -t {{path/to/output_tsv}} -- {{path/to/input_fasta_1 path/to/input_fasta_2 .
nextflow Tool for running computational pipelines. Mostly used for bioinformatics workflows. More information: https://www.nextflow.io. Run a pipeline, use cached results from previous runs: nextflow run {{main.nf}} -resume Run a specific release of a remote workflow from GitHub: nextflow run {{user/repo}} -revision {{release_tag}} Run with a given work directory for intermediate files, save execution report: nextflow run {{workflow}} -work-dir {{path/to/directory}} -with-report {{report.html}} Show details of previous runs in current directory: nextflow log
nf-core The nf-core framework tools, to create, check and develop best-practice guidelines for Nextflow. More information: https://nf-co.re/tools. List existing pipelines on nf-core: nf-core list Create a new pipeline skeleton: nf-core create Lint the pipeline code: nf-core lint {{path/to/directory}} Bump software versions in pipeline recipe: nf-core bump-version {{path/to/directory}} {{new_version}} Launch an nf-core pipeline: nf-core launch {{pipeline_name}} Download an nf-core pipeline for offline use: nf-core download {{pipeline_name}}
ng Create and manage Angular applications. More information: https://angular.io/cli. Create a new Angular application inside a directory: ng new {{project_name}} Add a new component to one’s application: ng generate component {{component_name}} Add a new class to one’s application: ng generate class {{class_name}} Add a new directive to one’s application: ng generate directive {{directive_name}} Run the application with the following command in its root directory: ng serve Build the application: ng build
nginx Nginx web server. More information: https://nginx.org/en/. Start server with the default config file: nginx Start server with a custom configuration file: nginx -c {{configuration_file}} Start server with a prefix for all relative paths in the configuration file: nginx -c {{configuration_file}} -p {{prefix/for/relative/paths}} Test the configuration without affecting the running server: nginx -t Reload the configuration by sending a signal with no downtime: nginx -s reload
ngrep Filter network traffic packets using regular expressions. More information: https://github.com/jpr5/ngrep. Capture traffic of all interfaces: ngrep -d any Capture traffic of a specific interface: ngrep -d {{eth0}} Capture traffic crossing port 22 of interface eth0: ngrep -d {{eth0}} port {{22}} Capture traffic from or to a host: ngrep host {{www.example.com}} Filter keyword ‘User-Agent:’ of interface eth0: ngrep -d {{eth0}} '{{User-Agent:}}'
ngrok Reverse proxy that creates a secure tunnel from a public endpoint to a locally running web service. More information: https://ngrok.com. Expose a local HTTP service on a given port: ngrok http {{80}} Expose a local HTTP service on a specific host: ngrok http {{foo.dev}}:{{80}} Expose a local HTTPS server: ngrok http https://localhost Expose TCP traffic on a given port: ngrok tcp {{22}} Expose TLS traffic for a specific host and port: ngrok tls -hostname={{foo.
ngs Scripting language created specifically for Ops. More information: https://github.com/ngs-lang/ngs. Execute a code snippet: ngs -e "{{echo('ngs is executed')}}" Execute a script: ngs {{path/to/script.ngs}} Print the version: ngs --version
nice Execute a program with a custom scheduling priority (niceness). Niceness values range from -20 (the highest priority) to 19 (the lowest). More information: https://www.gnu.org/software/coreutils/nice. Launch a program with altered priority: nice -n {{niceness_value}} {{command}}
nikto Web server scanner which performs tests against web servers for multiple items. More information: https://cirt.net/Nikto2. Perform a basic Nikto scan against a target host: perl nikto.pl -h {{192.168.0.1}} Specify the port number when performing a basic scan: perl nikto.pl -h {{192.168.0.1}} -p {{443}} Scan ports and protocols with full URL syntax: perl nikto.pl -h {{https://192.168.0.1:443/}} Scan multiple ports in the same scanning session: perl nikto.pl -h {{192.168.0.1}} -p {{80,88,443}}
nim The Nim compiler. Processes, compiles and links Nim language source files. More information: https://nim-lang.org/docs/nimc.html. Compile a source file: nim compile {{path/to/file.nim}} Compile and run a source file: nim compile -r {{path/to/file.nim}} Compile a source file with release optimizations enabled: nim compile -d:release {{path/to/file.nim}} Build a release binary optimized for low file size: nim compile -d:release --opt:size {{path/to/file.nim}} Generate HTML documentation for a module (output will be placed in the current directory): nim doc {{path/to/file.
nimble Package manager for the Nim programming language. Manage Nim projects and their dependencies. More information: https://github.com/nim-lang/nimble. Search for packages: nimble search {{search_string}} Install a package: nimble install {{package}} List installed packages: nimble list -i Create a new Nimble package in the current directory: nimble init Build a Nimble package: nimble build Install a Nimble package: nimble install
ninja A Build system designed to be fast. More information: https://ninja-build.org/manual.html. Build in the current directory: ninja Build in the current directory, executing 4 jobs at a time in parallel: ninja -j {{4}} Build a program in a given directory: ninja -C {{path/to/directory}} Show targets (e.g. install and uninstall): ninja -t targets Show help: ninja -h
nix A powerful package manager that makes package management reliable, reproducible, and declarative. nix is experimental and requires enabling experimental features. For a classic, stable interface, see tldr nix classic. Some nix subcommands such as build, develop, flake, registry, profile, search, repl, store, edit, why-depends, etc. have their own usage documentation. More information: https://nixos.org/manual/nix. Enable the nix command: mkdir -p ~/.config/nix; echo 'experimental-features = nix-command flakes' > ~/.config/nix/nix.conf Display help for the nix subcommand: nix help {{subcommand}}
nix-build Build a Nix expression. See also: tldr nix3 build. More information: https://nixos.org/manual/nix/stable/command-ref/nix-build.html. Build a Nix expression: nix-build '<nixpkgs>' --attr {{firefox}} Build a sandboxed Nix expression (on non-NixOS): nix-build '<nixpkgs>' --attr {{firefox}} --option sandbox true
Nix classic interface A classic, stable interface to a powerful package manager that makes package management reliable, reproducible, and declarative. Some Nix commands such as nix-build, nix-shell, nix-env, and nix-store have their own pages. See also: tldr nix. More information: https://nixos.org. Search for a package in nixpkgs via its name: nix-env -qaP {{search_term_regexp}} Start a shell with the specified packages available: nix-shell -p {{pkg1 pkg2 pkg3...}} Install some packages permanently: nix-env -iA {{nixpkgs.
nix-collect-garbage Delete unused and unreachable nix store paths. Generations can be listed using nix-env --list-generations. More information: https://nixos.org/releases/nix/latest/manual/#sec-nix-collect-garbage. Delete all store paths unused by current generations of each profile: sudo nix-collect-garbage --delete-old Simulate the deletion of old store paths: sudo nix-collect-garbage --delete-old --dry-run Delete all store paths older than 30 days: sudo nix-collect-garbage --delete-older-than 30d
nix-env Manipulate or query Nix user environments. More information: https://nixos.org/manual/nix/stable/#sec-nix-env. List all installed packages: nix-env -q Query installed packages: nix-env -q {{search_term}} Query available packages: nix-env -qa {{search_term}} Install package: nix-env -iA nixpkgs.{{pkg_name}} Install a package from a URL: nix-env -i {{pkg_name}} --file {{example.com}} Uninstall package: nix-env -e {{pkg_name}} Upgrade one package: nix-env -u {{pkg_name}} Upgrade all packages: nix-env -u
nix-shell Start an interactive shell based on a Nix expression. See also: tldr nix3 shell. More information: https://nixos.org/manual/nix/stable/command-ref/nix-shell.html. Start with nix expression in shell.nix or default.nix in the current directory: nix-shell Run shell command in non-interactive shell and exit: nix-shell --run "{{command}} {{argument1 argument2 ...}}" Start with expression in default.nix in the current directory: nix-shell {{default.nix}} Start with packages loaded from nixpkgs: nix-shell --packages {{package1 package2 ...}} Start with packages loaded from specific nixpkgs revision: nix-shell --packages {{package1 package2 .
nix-store Manipulate or query the Nix store. See also: tldr nix3 store. More information: https://nixos.org/manual/nix/stable/command-ref/nix-store.html. Collect garbage, such as removing unused paths: nix-store --gc Hard-link identical files together to reduce space usage: nix-store --optimise Delete a specific store path (must be unused): nix-store --delete {{/nix/store/...}} Show all dependencies of a store path (package), in a tree format: nix-store --query --tree {{/nix/store/...}} Calculate the total size of a certain store path with all the dependencies: du -cLsh $(nix-store --query --references {{/nix/store/.
nix build Build a Nix expression (downloading from the cache when possible). See also: tldr nix-build. See tldr nix3 flake for information about flakes. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-build.html. Build a package from nixpkgs, symlinking the result to ./result: nix build {{nixpkgs#pkg}} Build a package from a flake in the current directory, showing the build logs in the process: nix build -L {{.#pkg}} Build the default package from a flake in some directory: nix build {{.
nix develop Run a bash shell that provides the build environment of a derivation. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-develop.html. Start a shell with all dependencies of a package from nixpkgs available: nix develop {{nixpkgs#pkg}} Start a development shell for the default package in a flake in the current directory: nix develop In that shell, configure and build the sources: configurePhase; buildPhase
nix edit Open the Nix expression of a Nix package in $EDITOR. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-edit.html. Open the source of the Nix expression of a package from nixpkgs in your $EDITOR: nix edit {{nixpkgs#pkg}} Dump the source of a package to stdout: EDITOR=cat nix edit {{nixpkgs#pkg}}
nix flake Manage Nix flakes. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html. See documentation about what Nix flakes are: nix flake --help Create a new flake (just the flake.nix file) from the default template, in the current directory: nix flake init Update all inputs (dependencies) of the flake in the current directory: nix flake update Update a specific input (dependency) of the flake in the current directory: nix flake lock --update-input {{input}} Show all the outputs of a flake on github: nix flake show {{github:owner/repo}}
nix profile Install, update and remove packages from Nix profiles. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-profile.html. Install some packages from nixpkgs into the default profile: nix profile install {{nixpkgs#pkg1 nixpkgs#pkg2 ...}} Install a package from a flake on GitHub into a custom profile: nix profile install {{github:owner/repo/pkg}} --profile {{./path/to/directory}} List packages currently installed in the default profile: nix profile list Remove a package installed from nixpkgs from the default profile, by name: nix profile remove {{legacyPackages.
nix registry Manage a Nix flake registry. See tldr nix3 flake for information about flakes. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-registry.html. Pin the nixpkgs revision to the current version of the upstream repository: nix registry pin {{nixpkgs}} Pin an entry to the latest version of the branch, or a particular reivision of a github repository: nix registry pin {{entry}} {{github:owner/repo/branch_or_revision}} Add a new entry that always points to the latest version of a github repository, updating automatically: nix registry add {{entry}} {{github:owner/repo}}
nix repl Start an interactive environment for evaluating Nix expressions. See https://nixos.org/manual/nix/stable/language/index.html for a description of the Nix expression language. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-repl.html. Start an interactive environment for evaluating Nix expressions: nix repl Load all packages from a flake (e.g. nixpkgs) into scope: :lf {{nixpkgs}} Build a package from an expression: :b {{expression}} Start a shell with package from the expression available: :u {{expression}} Start a shell with dependencies of the package from the expression available: :s {{expression}}
nix run Run an application from a Nix flake. See tldr nix3 flake for information about flakes. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-run.html. Run the default application in the flake in the current directory: nix run Run a command whose name matches the package name from nixpkgs (if you want a different command from that package, see tldr nix3 shell): nix run nixpkgs#{{pkg}} Run a command with provided arguments: nix run nixpkgs#{{vim}} -- {{path/to/file}}
nix search Search for packages in a Nix flake. See tldr nix3 flake for information about flakes. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-search.html. Search nixpkgs for a package based on its name or description: nix search {{nixpkgs}} {{search_term...}} Show description of a package from nixpkgs: nix search {{nixpkgs#pkg}} Show all packages available from a flake on github: nix search {{github:owner/repo}}
nix shell Start a shell in which the specified packages are available. See also: tldr nix-shell. See tldr nix3 flake for information about flakes. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-shell.html. Start an interactive shell with some packages from nixpkgs: nix shell {{nixpkgs#pkg1 nixpkgs#packageSet.pkg2 ...}} Start a shell providing a package from an older version of nixpkgs (21.05): nix shell {{nixpkgs/nixos-21.05#pkg}} Start a shell with the “default package” from a flake in the current directory, printing build logs if any builds happen: nix shell -L
nix store Manipulate the Nix store. See also: tldr nix-store. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-store.html. Collect garbage, i.e. remove unused paths to reduce space usage: nix store gc Hard-link identical files together to reduce space usage: nix store optimise Delete a specific store path (most be unused): nix store delete {{/nix/store/...}} List a contents of the store path, on a remote store: nix store --store {{https://cache.nixos.org}} ls {{/nix/store/...}} Show the differences in versions between two store paths, with their respective dependencies: nix store diff-closures {{/nix/store/.
nix why-depends Show why a package depends on another package. More information: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-why-depends.html. Show why the currently running NixOS system requires a certain store path: nix why-depends {{/run/current-system}} {{/nix/store/...}} Show why a package from nixpkgs requires another package as a build-time dependency: nix why-depends --derivation {{nixpkgs#dependent}} {{nixpkgs#dependency}}
nkf Network kanji filter. Converts kanji code from one encoding to another. More information: https://manned.org/nkf. Convert to UTF-8 encoding: nkf -w {{path/to/file.txt}} Convert to SHIFT_JIS encoding: nkf -s {{path/to/file.txt}} Convert to UTF-8 encoding and overwrite the file: nkf -w --overwrite {{path/to/file.txt}} Set new line code to LF and overwrite (UNIX type): nkf -d --overwrite {{path/to/file.txt}} Set new line code to CRLF and overwrite (windows type): nkf -c --overwrite {{path/to/file.txt}} Decrypt mime file and overwrite: nkf -m --overwrite {{path/to/file.
nl A utility for numbering lines, either from a file, or from stdin. More information: https://www.gnu.org/software/coreutils/nl. Number non-blank lines in a file: nl {{path/to/file}} Read from stdout: cat {{path/to/file}} | nl {{options}} - Number only the lines with printable text: nl -t {{path/to/file}} Number all lines including blank lines: nl -b a {{path/to/file}} Number only the body lines that match a basic regular expression (BRE) pattern: nl -b p'FooBar[0-9]' {{path/to/file}}
nload A tool for visualizing network usage in the terminal. More information: https://github.com/rolandriegel/nload. View all network traffic (use the arrow keys to switch interfaces): nload View network traffic on specific interfaces (use the arrow keys to switch interfaces): nload device {{interface_one}} {{interface_two}}
nm List symbol names in object files. More information: https://manned.org/nm. List global (extern) functions in a file (prefixed with T): nm -g {{path/to/file.o}} List only undefined symbols in a file: nm -u {{path/to/file.o}} List all symbols, even debugging symbols: nm -a {{path/to/file.o}} Demangle C++ symbols (make them readable): nm --demangle {{path/to/file.o}}
nm-classic This command is an alias of nm. View documentation for the original command: tldr nm
nmap Network exploration tool and security/port scanner. Some features only activate when Nmap is run with root privileges. More information: https://nmap.org. Check if an IP address is up, and guess the remote host’s operating system: nmap -O {{ip_or_hostname}} Try to determine whether the specified hosts are up (ping scan) and what their names and MAC addresses are: sudo nmap -sn {{ip_or_hostname}} {{optional_another_address}} Also enable scripts, service detection, OS fingerprinting and traceroute: nmap -A {{address_or_addresses}}
nmblookup Discover SMB shares. More information: https://www.samba.org/samba/docs/current/man-html/nmblookup.1.html. Find hosts in the local network with SMB shares: nmblookup -S '*' Find hosts in the local network with SMB shares run by SAMBA: nmblookup --status __SAMBA__
nms Command-line tool that recreates the famous data decryption effect seen in the 1992 movie Sneakers from stdin. More information: https://github.com/bartobri/no-more-secrets. Decrypt text after a keystroke: echo "{{Hello, World!}}" | nms Decrypt output immediately, without waiting for a keystroke: {{ls -la}} | nms -a Decrypt the content of a file, with a custom output color: cat {{path/to/file}} | nms -a -f {{blue|white|yellow|black|magenta|green|red}} Clear the screen before decrypting: {{command}} | nms -a -c
node Server-side JavaScript platform (Node.js). More information: https://nodejs.org. Run a JavaScript file: node {{path/to/file}} Start a REPL (interactive shell): node Execute the specified file restarting the process when an imported file is changed (requires Node.js version 18.11+): node --watch {{path/to/file}} Evaluate JavaScript code by passing it as an argument: node -e "{{code}}" Evaluate and print the result, useful to print node’s dependencies versions: node -p "process.versions" Activate inspector, pausing execution until a debugger is connected once source code is fully parsed: node --no-lazy --inspect-brk {{path/to/file}}
nodemon Watch files and automatically restart a node application when changes are detected. More information: https://nodemon.io. Execute the specified file and watch a specific file for changes: nodemon {{path/to/file.js}} Manually restart nodemon (note nodemon must already be active for this to work): rs Ignore specific files: nodemon --ignore {{path/to/file_or_directory}} Pass arguments to the node application: nodemon {{path/to/file.js}} {{arguments}} Pass arguments to node itself if they’re not nodemon arguments already (e.g. --inspect): nodemon {{arguments}} {{path/to/file.
nodenv A tool to manage Node.js versions. More information: https://github.com/nodenv/nodenv. Install a specific version of Node.js: nodenv install {{version}} Display a list of available versions: nodenv install --list Use a specific version of Node.js across the whole system: nodenv global {{version}} Use a specific version of Node.js with a directory: nodenv local {{version}} Display the Node.js version for the current directory: nodenv version Display the location of a Node.js installed command (e.
nohup Allows for a process to live when the terminal gets killed. More information: https://www.gnu.org/software/coreutils/nohup. Run a process that can live beyond the terminal: nohup {{command}} {{argument1 argument2 ...}} Launch nohup in background mode: nohup {{command}} {{argument1 argument2 ...}} & Run a shell script that can live beyond the terminal: nohup {{path/to/script.sh}} & Run a process and write the output to a specific file: nohup {{command}} {{argument1 argument2 ...}} > {{path/to/output_file}} &
nokogiri An HTML, XML, SAX and Reader parser. More information: https://nokogiri.org. Parse the contents of a URL or file: nokogiri {{url|path/to/file}} Parse as a specific type: nokogiri {{url|path/to/file}} --type {{xml|html}} Load a specific initialization file before parsing: nokogiri {{url|path/to/file}} -C {{path/to/config_file}} Parse using a specific encoding: nokogiri {{url|path/to/file}} --encoding {{encoding}} Validate using a RELAX NG file: nokogiri {{url|path/to/file}} --rng {{url|path/to/file}}
nomad Distributed, highly available, datacenter-aware scheduler. More information: https://www.nomadproject.io/docs/commands/. Show the status of nodes in the cluster: nomad node status Validate a job file: nomad job validate {{path/to/file.nomad}} Plan a job for execution on the cluster: nomad job plan {{path/to/file.nomad}} Run a job on the cluster: nomad job run {{path/to/file.nomad}} Show the status of jobs currently running on the cluster: nomad job status Show the detailed status information about a specific job: nomad job status {{job_name}}
nop Check validity and pretty-print graphs in canonical format. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://www.graphviz.org/pdf/nop.1.pdf. Pretty-print one or more graphs in canonical format: nop {{path/to/input1.gv}} {{path/to/input2.gv ...}} > {{path/to/output.gv}} Check one or more graphs for validity, producing no output graph: nop -p {{path/to/input1.gv}} {{path/to/input2.gv ...}} Display help for nop: nop -?
noti Monitor a process and trigger a banner notification. More information: https://github.com/variadico/noti. Display a notification when tar finishes compressing files: noti {{tar -cjf example.tar.bz2 example/}} Display a notification even when you put it after the command to watch: {{command_to_watch}}; noti Monitor a process by PID and trigger a notification when the PID disappears: noti -w {{process_id}}
notmuch Command-line based program for indexing, searching, reading, and tagging large collections of email messages. More information: https://notmuchmail.org/manpages/. Configure for first use: notmuch setup Add a tag for all messages matching a search term: notmuch tag +{{custom_tag}} "{{search_term}}" Remove a tag for all messages matching a search term: notmuch tag -{{custom_tag}} "{{search_term}}" Count messages matching the given search term: notmuch count --output={{messages|threads}} "{{search_term}}" Search for messages matching the given search term: notmuch search --format={{json|text}} --output={{summary|threads|messages|files|tags}} "{{search_term}}"
now Cloud platform for serverless deployment. This command is deprecated. See vercel, the updated version of this tool. More information: https://zeit.co/now. Deploy the current directory: now Display a list of deployments: now list Display information related to a deployment: now inspect {{deployment_url}} Remove a deployment: now remove {{deployment_id}} Log in into an account or create a new one: now login Initialize an example project (a new directory will be created): now init
nping Network packet generation tool/ping utility. More information: https://nmap.org/nping/. Ping a specified host using ICMP if the user is allowed to, otherwise using TCP: nping {{example.com}} Ping a specified host using ICMP assuming that the user is allowed to do so: nping --icmp --privileged {{example.com}} Ping a specified host using UDP: nping --udp {{example.com}} Ping a specified host on a given port using TCP: nping --tcp --dest-port {{443}} {{example.com}} Ping a certain number of times: nping --count {{10}} {{example.
npm JavaScript and Node.js package manager. Manage Node.js projects and their module dependencies. More information: https://www.npmjs.com. Interactively create a package.json file: npm init Download all the packages listed as dependencies in package.json: npm install Download a specific version of a package and add it to the list of dependencies in package.json: npm install {{module_name}}@{{version}} Download a package and add it to the list of dev dependencies in package.json: npm install {{module_name}} --save-dev
npm-check Check for outdated, incorrect, and unused npm package dependencies. More information: https://github.com/dylang/npm-check. Display a report of outdated, incorrect, and unused dependencies: npm-check Interactively update out-of-date packages: npm-check --update Update everything without prompting: npm-check --update-all Don’t check for unused packages: npm-check --skip-unused
npm fund Retrieve funding information from packages. More information: https://docs.npmjs.com/cli/v8/commands/npm-fund. List dependencies with funding URL for the project in the current directory: npm fund Open the funding URL for a specific package in the default web browser: npm fund {{package}} List dependencies with a funding URL for a specific [w]orkspace for the project in the current directory: npm fund -w {{workspace}}
npm-home Open the npm page, Yarn page, or GitHub repository of a package in the web browser. More information: https://github.com/sindresorhus/npm-home. Open the npm page of a specific package in the web browser: npm-home {{package}} Open the GitHub repository of a specific package in the web browser: npm-home -g {{package}} Open the Yarn page of a specific package in the web browser: npm-home -y {{package}}
npm-name Check whether a package or organization name is available on npm. More information: https://github.com/sindresorhus/npm-name-cli. Check if a specific package name is available in the npm registry: npm-name {{package}} Find similar package names in the npm registry: npm-name --similar {{package}}
npm query Print an array of dependency objects using CSS-like selectors. More information: https://docs.npmjs.com/cli/v8/commands/npm-query. Print direct dependencies: npm query ':root > *' Print all direct production/development dependencies: npm query ':root > .{{prod|dev}}' Print dependencies with a specific name: npm query '#{{package}}' Print dependencies with a specific name and within a semantic versioning range: npm query #{{package}}@{{semantic_version}} Print dependencies which have no dependencies: npm query ':empty' Find all dependencies with postinstall scripts and uninstall them: npm query ":attr(scripts, [postinstall])" | jq 'map(.
npm-why Identifies why an npm package is installed. More information: https://github.com/amio/npm-why. Show why an npm package is installed: npm-why {{package}}
nproc Print the number of processing units (normally CPUs) available. More information: https://www.gnu.org/software/coreutils/nproc. Display the number of available processing units: nproc Display the number of installed processing units, including any inactive ones: nproc --all If possible, subtract a given number of units from the returned value: nproc --ignore {{count}}
npx Execute binaries from npm packages. More information: https://github.com/npm/npx. Execute the command from a local or remote npm package: npx {{command}} {{argument1 argument2 ...}} In case multiple commands with the same name exist, it is possible to explicitly specify the package: npx --package {{package}} {{command}} Run a command if it exists in the current path or in node_modules/.bin: npx --no-install {{command}} {{argument1 argument2 ...}} Execute a specific command suppressing any output from npx itself: npx --quiet {{command}} {{argument1 argument2 .
nrm npm registry manager. Helps to easily switch between different npm registries. More information: https://github.com/Pana/nrm. List all registries: nrm ls Change to a particular registry: nrm use {{registry}} Show the response time for all registries: nrm test Add a custom registry: nrm add {{registry}} {{url}} Delete a registry: nrm del {{registry}}
nslookup Query name server(s) for various domain records. More information: https://manned.org/nslookup. Query your system’s default name server for an IP address (A record) of the domain: nslookup {{example.com}} Query a given name server for a NS record of the domain: nslookup -type=NS {{example.com}} {{8.8.8.8}} Query for a reverse lookup (PTR record) of an IP address: nslookup -type=PTR {{54.240.162.118}} Query for ANY available records using TCP protocol: nslookup -vc -type=ANY {{example.com}} Query a given name server for the whole zone file (zone transfer) of the domain using TCP protocol: nslookup -vc -type=AXFR {{example.
nth Name That Hash - Instantly name the type of any hash. More information: https://github.com/hashpals/name-that-hash. Name a hash: nth -t {{5f4dcc3b5aa765d61d8327deb882cf99}} Name hashes in a file: nth -f {{path/to/hashes}} Output in json format: nth -t {{5f4dcc3b5aa765d61d8327deb882cf99}} -g Decode hash in Base64 before naming it: nth -t {{NWY0ZGNjM2I1YWE3NjVkNjFkODMyN2RlYjg4MmNmOTkK}} -b64
ntl This command is an alias of netlify. More information: https://cli.netlify.com. View documentation for the original command: tldr netlify
nu Nushell (“a new type of shell”) takes a modern, structured approach to your command-line. See also: elvish. More information: https://www.nushell.sh. Start an interactive shell session: nu Execute specific commands: nu --commands "{{echo 'nu is executed'}}" Execute a specific script: nu {{path/to/script.nu}} Execute a specific script with logging: nu --log-level {{error|warn|info|debug|trace}} {{path/to/script.nu}}
nudoku Sudoku game in terminal. More information: https://jubalh.github.io/nudoku/. Start a sudoku game: nudoku Choose the difficulty of the game: nudoku -d {{easy|normal|hard}} Navigate the board: {{h|j|k|l}} OR {{Left|Down|Up|Right}} arrow key Delete a number: {{Backspace|x}} Get a hint: H See the complete solution: S Create a new puzzle: N Quit the game: Q
numfmt Convert numbers to and from human-readable strings. More information: https://www.gnu.org/software/coreutils/numfmt. Convert 1.5K (SI Units) to 1500: numfmt --from={{si}} {{1.5K}} Convert 5th field (1-indexed) to IEC Units without converting header: ls -l | numfmt --header={{1}} --field={{5}} --to={{iec}} Convert to IEC units, pad with 5 characters, left aligned: du -s * | numfmt --to={{iec}} --format="{{\%-5f}}"
nvidia-smi Aid the management and monitoring of NVIDIA GPU devices. More information: https://developer.nvidia.com/nvidia-system-management-interface. Display information on all available GPUs and processes using them: nvidia-smi Display more detailed GPU information: nvidia-smi --query Monitor overall GPU usage with 1-second update interval: nvidia-smi dmon
nvim Neovim, a programmer’s text editor based on Vim, provides several modes for different kinds of text manipulation. Pressing i in normal mode enters insert mode. <Esc> goes back to normal mode, which doesn’t allow regular text insertion. See also vim, vimtutor, vimdiff. More information: https://neovim.io. Open a file: nvim {{path/to/file}} Enter text editing mode (insert mode): <Esc>i Copy (“yank”) or cut (“delete”) the current line (paste it with P): <Esc>{{yy|dd}}
nvm Install, uninstall or switch between Node.js versions. Supports version numbers like “12.8” or “v16.13.1”, and labels like “stable”, “system”, etc. More information: https://github.com/creationix/nvm. Install a specific version of Node.js: nvm install {{node_version}} Use a specific version of Node.js in the current shell: nvm use {{node_version}} Set the default Node.js version: nvm alias default {{node_version}} List all available Node.js versions and highlight the default one: nvm list Uninstall a given Node.
nvm Install, uninstall, or switch between Node.js versions under the fish shell. Supports version numbers like “12.8” or “v16.13.1”, and labels like “stable”, “system”, etc. More information: https://github.com/jorgebucaran/nvm.fish. Install a specific version of Node.js: nvm install {{node_version}} Use a specific version of Node.js in the current shell: nvm use {{node_version}} Set the default Node.js version: set nvm_default_version {{node_version}} List all available Node.js versions and highlight the default one: nvm list
nvme NVMe storage user space utility. More information: https://github.com/linux-nvme/nvme-cli. List all nvme devices: sudo nvme list Show device information: sudo nvme smart-log {{device}}
nx Manage nx workspaces. More information: https://nx.dev/l/r/getting-started/nx-cli. Build a specific project: nx build {{project}} Test a specific project: nx test {{project}} Execute a target on a specific project: nx run {{project}}:{{target}} Execute a target on multiple projects: nx run-many --target {{target}} --projects {{project1}},{{project2}} Execute a target on all projects in the workspace: nx run-many --target {{target}} --all Execute a target only on projects that have been changed: nx affected --target {{target}}
nyxt Nyxt is a keyboard-driven web browser for power users. More information: https://nyxt.atlas.engineer. List all profiles: nyxt --list-data-profiles Set the init.lisp file path: nyxt --init {{path/to/file}} Change the path to the auto-config file: nyxt --auto-config {{path/to/file}} Print system information: nyxt --system-information
oathtool OATH one-time password tool. More information: https://www.nongnu.org/oath-toolkit/oathtool.1.html. Generate TOTP token (behaves like Google Authenticator): oathtool --totp --base32 "{{secret}}" Generate a TOTP token for a specific time: oathtool --totp --now "{{2004-02-29 16:21:42}}" --base32 "{{secret}}" Validate a TOTP token: oathtool --totp --base32 "{{secret}}" "{{token}}"
objdump View information about object files. More information: https://manned.org/objdump. Display the file header information: objdump -f {{binary}} Display all header information: objdump -x {{binary}} Display the disassembled output of executable sections: objdump -d {{binary}} Display the disassembled executable sections in intel syntax: objdump -M intel -d {{binary}} Display a complete binary hex dump of all sections: objdump -s {{binary}}
obs Open Broadcaster Software. Video recording and livestreaming program. More information: https://obsproject.com/. Launch OBS: obs Launch OBS in portable mode: obs --portable Automatically start recording a video on launch: obs --startrecording Automatically start the replay buffer on launch: obs --startreplaybuffer Automatically start streaming on launch: obs --startstreaming Minimise to the system tray on launch: obs --minimize-to-tray Make the log more verbose (for debugging): obs --verbose
oc The OpenShift Container Platform CLI. Allows for application and container management. More information: https://docs.openshift.com/container-platform/3.11/cli_reference/get_started_cli.html. Log in to the OpenShift Container Platform server: oc login Create a new project: oc new-project {{project_name}} Switch to an existing project: oc project {{project_name}} Add a new application to a project: oc new-app {{repo_url}} --name {{application}} Open a remote shell session to a container: oc rsh {{pod_name}} List pods in a project: oc get pods
ocaml The OCaml repl (read-evaluate-print-loop). Interprets Ocaml commands. More information: https://ocaml.org. Read OCaml commands from the user and execute them: ocaml Read OCaml commands from a file and execute them: ocaml {{path/to/file.ml}} Run OCaml script with modules: ocaml {{module1}} {{module2}} {{path/to/file.ml}}
ocamlc The OCaml bytecode compiler. Produces executables runnable by the OCaml interpreter. More information: https://ocaml.org. Create a binary from a source file: ocamlc {{path/to/source_file.ml}} Create a named binary from a source file: ocamlc -o {{path/to/binary}} {{path/to/source_file.ml}} Automatically generate a module signature (interface) file: ocamlc -i {{path/to/source_file.ml}}
ocamlfind The findlib package manager for OCaml. Simplifies linking executables with external libraries. More information: http://projects.camlcity.org/projects/findlib.html. Compile a source file to a native binary and link with packages: ocamlfind ocamlopt -package {{package1}},{{package2}} -linkpkg -o {{path/to/executable}} {{path/to/source.ml}} Compile a source file to a bytecode binary and link with packages: ocamlfind ocamlc -package {{package1}},{{package2}} -linkpkg -o {{path/to/executable}} {{path/to/source.ml}} Cross-compile for a different platform: ocamlfind -toolchain {{cross-toolchain}} ocamlopt -o {{path/to/executable}} {{path/to/source.ml}}
ocamlopt The OCaml native code compiler. Produces native executables, e.g. ELF on Linux. More information: https://ocaml.org. Compile a source file: ocamlopt -o {{path/to/binary}} {{path/to/source_file.ml}} Compile with debugging enabled: ocamlopt -g -o {{path/to/binary}} {{path/to/source_file.ml}}
ocrmypdf Generate a searchable PDF or PDF/A from a scanned PDF or an image of text. More information: https://ocrmypdf.readthedocs.io/en/latest/cookbook.html. Create a new searchable PDF/A file from a scanned PDF or image file: ocrmypdf {{path/to/input_file}} {{path/to/output.pdf}} Replace a scanned PDF file with a searchable PDF file: ocrmypdf {{path/to/file.pdf}} {{path/to/file.pdf}} Skip pages of a mixed-format input PDF file that already contain text: ocrmypdf --skip-text {{path/to/input.pdf}} {{path/to/output.pdf}} Clean, de-skew, and rotate pages of a poor scan: ocrmypdf --clean --deskew --rotate-pages {{path/to/input_file}} {{path/to/output.
octave GNU Octave is a programming language for scientific computing. More information: https://docs.octave.org/latest/Invoking-Octave-from-the-Command-Line.html. Start an interactive session: octave Execute a specific script file: octave {{path/to/script.m}} Execute a script file with specific arguments: octave {{path/to/script.m}} {{argument1 argument2 ...}} Start an interactive session with a GUI: octave --gui Display help: octave --help Display version: octave --version
od Display file contents in octal, decimal or hexadecimal format. Optionally display the byte offsets and/or printable representation for each line. More information: https://www.gnu.org/software/coreutils/od. Display file using default settings: octal format, 8 bytes per line, byte offsets in octal, and duplicate lines replaced with *: od {{path/to/file}} Display file in verbose mode, i.e. without replacing duplicate lines with *: od -v {{path/to/file}} Display file in hexadecimal format (2-byte units), with byte offsets in decimal format: od --format={{x}} --address-radix={{d}} -v {{path/to/file}}
odps Aliyun ODPS (Open Data Processing Service) command-line tool. Some subcommands such as odps inst have their own usage documentation. More information: https://www.alibabacloud.com/help/doc-detail/27971.htm. Start the command-line with a custom configuration file: odpscmd --config={{odps_config.ini}} Switch current project: use {{project_name}}; Show tables in the current project: show tables; Describe a table: desc {{table_name}}; Show table partitions: show partitions {{table_name}}; Describe a partition: desc {{table_name}} partition ({{partition_spec}});
odps auth User authorities in ODPS (Open Data Processing Service). See also odps. More information: https://www.alibabacloud.com/help/doc-detail/27971.htm. Add a user to the current project: add user {{username}}; Grant a set of authorities to a user: grant {{action_list}} on {{object_type}} {{object_name}} to user {{username}}; Show authorities of a user: show grants for {{username}}; Create a user role: create role {{role_name}}; Grant a set of authorities to a role: grant {{action_list}} on {{object_type}} {{object_name}} to role {{role_name}};
odps func Manage functions in ODPS (Open Data Processing Service). See also odps. More information: https://www.alibabacloud.com/help/doc-detail/27971.htm. Show functions in the current project: list functions; Create a Java function using a .jar resource: create function {{func_name}} as {{path.to.package.Func}} using '{{package.jar}}'; Create a Python function using a .py resource: create function {{func_name}} as {{script.Func}} using '{{script.py}}'; Delete a function: drop function {{func_name}};
odps inst Manage instances in ODPS (Open Data Processing Service). See also odps. More information: https://www.alibabacloud.com/help/doc-detail/27971.htm. Show instances created by current user: show instances; Describe the details of an instance: desc instance {{instance_id}}; Check the status of an instance: status {{instance_id}}; Wait on the termination of an instance, printing log and progress information until then: wait {{instance_id}}; Kill an instance: kill {{instance_id}};
odps resource Manage resources in ODPS (Open Data Processing Service). See also odps. More information: https://www.alibabacloud.com/help/doc-detail/27971.htm. Show resources in the current project: list resources; Add file resource: add file {{filename}} as {{alias}}; Add archive resource: add archive {{archive.tar.gz}} as {{alias}}; Add .jar resource: add jar {{package.jar}}; Add .py resource: add py {{script.py}}; Delete resource: drop resource {{resource_name}};
odps table Create and modify tables in ODPS (Open Data Processing Service). See also odps. More information: https://www.alibabacloud.com/help/doc-detail/27971.htm. Create a table with partition and lifecycle: create table {{table_name}} ({{col}} {{type}}) partitioned by ({{col}} {{type}}) lifecycle {{days}}; Create a table based on the definition of another table: create table {{table_name}} like {{another_table}}; Add partition to a table: alter table {{table_name}} add partition ({{partition_spec}}); Delete partition from a table: alter table {{table_name}} drop partition ({{partition_spec}});
odps tunnel Data tunnel in ODPS (Open Data Processing Service). See also odps. More information: https://www.alibabacloud.com/help/doc-detail/27971.htm. Download table to local file: tunnel download {{table_name}} {{path/to/file}}; Upload local file to a table partition: tunnel upload {{path/to/file}} {{table_name}}/{{partition_spec}}; Upload table specifying field and record delimiters: tunnel upload {{path/to/file}} {{table_name}} -fd {{field_delim}} -rd {{record_delim}}; Upload table using multiple threads: tunnel upload {{path/to/file}} {{table_name}} -threads {{num}};
offlineimap Synchronize a remote IMAP server with local Maildir folders. More information: http://www.offlineimap.org. Synchronize once, without enabling autorefresh: offlineimap -o Synchronize a specific account: offlineimap -a {{account}} Synchronize a specific folder: offlineimap -f {{folder}}
ogr2ogr Convert geospatial vector data between file formats. More information: https://gdal.org/programs/ogr2ogr.html. Convert a Shapefile into a GeoPackage: ogr2ogr -f GPKG {{path/to/output}}.gpkg {{path/to/input}}.shp Reduce a GeoJSON to features matching a condition: ogr2ogr -where '{{myProperty > 42}}' -f {{GeoJSON}} {{path/to/output.geojson}} {{path/to/input.geojson}} Change coordinate reference system of a GeoPackage from EPSG:4326 to EPSG:3857: ogr2ogr -s_srs {{EPSG:4326}} -t_srs {{EPSG:3857}} -f GPKG {{path/to/output}}.gpkg {{path/to/input}}.gpkg Convert a CSV file into a GeoPackage, specifying the names of the coordinate columns and assigning a coordinate reference system: ogr2ogr -f GPKG {{path/to/output}}.
ogrinfo List information about an OGR-supported data source. More information: https://gdal.org/programs/ogrinfo.html. List supported formats: ogrinfo --formats List layers of a data source: ogrinfo {{path/to/input.gpkg}} Get detailed information about a specific layer of a data source: ogrinfo {{path/to/input.gpkg}} {{layer_name}} Show summary information about a specific layer of a data source: ogrinfo -so {{path/to/input.gpkg}} {{layer_name}} Show summary of all layers of the data source: ogrinfo -so -al {{path/to/input.gpkg}} Show detailed information of features matching a condition: ogrinfo -where '{{attribute_name > 42}}' {{path/to/input.
ogrmerge.py Merge several vector datasets into a single one. More information: https://gdal.org/programs/ogrmerge.html. Create a GeoPackage with a layer for each input Shapefile: ogrmerge.py -f {{GPKG}} -o {{path/to/output.gpkg}} {{path/to/input1.shp path/to/input2.shp ...}} Create a virtual datasource (VRT) with a layer for each input GeoJSON: ogrmerge.py -f {{VRT}} -o {{path/to/output.vrt}} {{path/to/input1.geojson path/to/input2.geojson ...}} Concatenate two vector datasets and store source name of dataset in attribute ‘source_name’: ogrmerge.py -single -f {{GeoJSON}} -o {{path/to/output.geojson}} -src_layer_field_name country {{source_name}} {{path/to/input1.
ohdear-cli An unofficial Oh Dear CLI written with Laravel Zero. More information: https://github.com/nunomaduro/ohdear-cli. Display details about the currently authenticated user: ohdear-cli me Add a new site to Oh Dear: ohdear-cli sites:add {{url}} Display a list of sites and their current status: ohdear-cli sites:list Display details about a specific site: ohdear-cli sites:show {{site_id}}
okular View documents. More information: https://docs.kde.org/stable5/en/okular/okular/command-line-options.html. Launch document viewer: okular Open specific documents: okular {{path/to/file1 path/to/file2 ...}} Open a document at a specific page: okular --page {{page_number}} {{path/to/file}} Open a specific document in presentation mode: okular --presentation {{path/to/file}} Open a specific document and start a print dialog: okular --print {{path/to/file}} Open a document and search for a specific string: okular --find {{search_string}} {{path/to/file}}
omf Oh My Fish, the Fishshell Framework. Install packages to extend and modify the fish shell. More information: https://github.com/oh-my-fish/oh-my-fish. Install one or more packages: omf install {{name}} List installed packages: omf list List available themes: omf theme Apply a theme: omf theme {{name}} Remove a theme or package: omf remove {{name}} Uninstall Oh My Fish: omf destroy
omz Oh My Zsh command-line tool. More information: https://github.com/ohmyzsh/ohmyzsh. Update Oh My Zsh: omz update Print the changes from the latest update of Oh My Zsh: omz changelog Restart the current Zsh session and Oh My Zsh: omz reload List all available plugins: omz plugin list Enable/Disable an Oh My Zsh plugin: omz plugin {{enable|disable}} {{plugin}} List all available themes: omz theme list Set an Oh My Zsh theme in ~/.
ooniprobe Open Observatory of Network Interference (OONI). Test the blocking of websites and apps. Measure the speed and performance of your network. More information: https://ooni.org/support/ooni-probe-cli/. List all tests performed: ooniprobe list Show information about a specific test: ooniprobe list {{7}} Run all available tests: ooniprobe run all Perform a specific test: ooniprobe run {{performance}} Check the availability of a specific website: ooniprobe run websites --input {{https://ooni.org/}} Check the availability of all websites listed in a file: ooniprobe run websites --input-file {{path/to/my-websites.
opam OCaml Package Manager. Manage OCaml compilers, tools and libraries. More information: https://opam.ocaml.org/. Initialize opam for first use: opam init Search for packages: opam search {{query}} Install a package and all of its dependencies: opam install {{package}} Display detailed information about a package: opam show {{package}} List all installed packages: opam list Update the local package database: opam update Upgrade all installed packages: opam upgrade Display all commands: opam help
openai CLI tool providing access to the OpenAI API. More information: https://github.com/openai/openai-python. List models: openai api models.list Create a completion: openai api completions.create --model {{ada}} --prompt {{"Hello world"}} Create a chat completion: openai api chat_completions.create --model {{gpt-3.5-turbo}} --message {{user "Hello world"}} Generate images via DALL·E API: openai api image.create --prompt {{"two dogs playing chess, cartoon"}} --num-images {{1}}
openconnect A VPN client, for Cisco AnyConnect VPNs and others. More information: https://www.infradead.org/openconnect/manual.html. Connect to a server: openconnect {{vpn.example.org}} Connect to a server, forking into the background: openconnect --background {{vpn.example.org}} Terminate the connection that is running in the background: killall -SIGINT openconnect Connect to a server, reading options from a config file: openconnect --config={{path/to/file}} {{vpn.example.org}} Connect to a server and authenticate with a specific SSL client certificate: openconnect --certificate={{path/to/file}} {{vpn.example.org}}
openscad Software for creating solid 3D CAD objects. More information: https://openscad.org. Open a file: openscad {{path/to/button.scad}} Convert a file to STL: openscad -o {{path/to/button.stl}} {{path/to/button.scad}} Render a file to PNG in a specific colorscheme: openscad -o {{path/to/button.png}} --colorscheme {{Sunset}} {{path/to/button.scad}}
openssl OpenSSL cryptographic toolkit. Some subcommands such as openssl req have their own usage documentation. More information: https://www.openssl.org. Print a list of available subcommands: openssl help Print options for a specific subcommand: openssl help {{x509}} Print the version of OpenSSL: openssl version
openssl dgst OpenSSL command to generate digest values and perform signature operations. More information: https://www.openssl.org/docs/manmaster/man1/openssl-dgst.html. Calculate the SHA256 digest for a file, saving the result to a specific file: openssl dgst -sha256 -binary -out {{output_file}} {{input_file}} Sign a file using an RSA key, saving the result to a specific file: openssl dgst -sign {{private_key_file}} -sha256 -sigopt rsa_padding_mode:pss -out {{output_file}} {{input_file}} Verify an RSA signature: openssl dgst -verify {{public_key_file}} -signature {{signature_file}} -sigopt rsa_padding_mode:pss {{signature_message_file}}
openssl genpkey OpenSSL command to generate asymmetric key pairs. More information: https://www.openssl.org/docs/manmaster/man1/openssl-genpkey.html. Generate an RSA private key of 2048 bits, saving it to a specific file: openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:{{2048}} -out {{filename.key}} Generate an elliptic curve private key using the curve prime256v1, saving it to a specific file: openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:{{prime256v1}} -out {{filename.key}} Generate an ED25519 elliptic curve private key, saving it to a specific file: openssl genpkey -algorithm {{ED25519}} -out {{filename.
openssl genrsa OpenSSL command to generate RSA private keys. More information: https://www.openssl.org/docs/manmaster/man1/openssl-genrsa.html. Generate an RSA private key of 2048 bits to stdout: openssl genrsa Save an RSA private key of an arbitrary number of bits to the output file: openssl genrsa -out {{output_file.key}} {{1234}} Generate an RSA private key and encrypt it with AES256 (you will be prompted for a passphrase): openssl genrsa {{-aes256}}
openssl prime OpenSSL command to compute prime numbers. More information: https://www.openssl.org/docs/manmaster/man1/openssl-prime.html. Generate a 2048bit prime number and display it in hexadecimal: openssl prime -generate -bits 2048 -hex Check if a given number is prime: openssl prime {{number}}
openssl req OpenSSL command to manage PKCS#10 Certificate Signing Requests. More information: https://www.openssl.org/docs/manmaster/man1/openssl-req.html. Generate a certificate signing request to be sent to a certificate authority: openssl req -new -sha256 -key {{filename.key}} -out {{filename.csr}} Generate a self-signed certificate and a corresponding key-pair, storing both in a file: openssl req -new -x509 -newkey {{rsa}}:{{4096}} -keyout {{filename.key}} -out {{filename.cert}} -subj "{{/C=XX/CN=foobar}}" -days {{365}}
openssl s_client OpenSSL command to create TLS client connections. More information: https://www.openssl.org/docs/manmaster/man1/openssl-s_client.html. Display the start and expiry dates for a domain’s certificate: openssl s_client -connect {{host}}:{{port}} 2>/dev/null | openssl x509 -noout -dates Display the certificate presented by an SSL/TLS server: openssl s_client -connect {{host}}:{{port}} </dev/null Set the Server Name Indicator (SNI) when connecting to the SSL/TLS server: openssl s_client -connect {{host}}:{{port}} -servername {{hostname}} Display the complete certificate chain of an HTTPS server: openssl s_client -connect {{host}}:443 -showcerts </dev/null
openssl ts OpenSSL command to generate and verify timestamps. More information: https://www.openssl.org/docs/manmaster/man1/openssl-ts.html. Generate a SHA-512 timestamp request of a specific file and output to file.tsq: openssl ts -query -data {{path/to/file}} -sha512 -out {{path/to/file.tsq}} Check the date and metadata of a specific timestamp response file: openssl ts -reply -in {{path/to/file.tsr}} -text Verify a timestamp request file and a timestamp response file from the server with an SSL certificate file: openssl ts -verify -in {{path/to/file.
openssl x509 OpenSSL command to manage X.509 certificates. More information: https://www.openssl.org/docs/manmaster/man1/openssl-x509.html. Display certificate information: openssl x509 -in {{filename.crt}} -noout -text Display a certificate’s expiration date: openssl x509 -enddate -noout -in {{filename.pem}} Convert a certificate between binary DER encoding and textual PEM encoding: openssl x509 -inform {{der}} -outform {{pem}} -in {{original_certificate_file}} -out {{converted_certificate_file}} Store a certificate’s public key in a file: openssl x509 -in {{certificate_file}} -noout -pubkey -out {{output_file}}
openttd Open source clone of the Microprose game “Transport Tycoon Deluxe”. More information: https://www.openttd.org. Start a new game: openttd -g Load save game at start: openttd -g {{path/to/file}} Start with the specified window resolution: openttd -r {{1920x1080}} Start with a custom configuration file: openttd -c {{path/to/file}} Start with selected video, sound, and music drivers: openttd -v {{video_driver}} -s {{sound_driver}} -m {{music_driver}} Start a dedicated server, forked in the background: openttd -f -D {{host}}:{{port}}
openvpn OpenVPN client and daemon binary. More information: https://openvpn.net/. Connect to server using a config file: sudo openvpn {{path/to/client.conf}} Try to set up an insecure peer-to-peer tunnel on bob.example.com host: sudo openvpn --remote {{alice.example.com}} --dev {{tun1}} --ifconfig {{10.4.0.1}} {{10.4.0.2}} Connect to the awaiting bob.example.com host without encryption: sudo openvpn --remote {{bob.example.com}} --dev {{tun1}} --ifconfig {{10.4.0.2}} {{10.4.0.1}} Create a cryptographic key and save it to file: openvpn --genkey secret {{path/to/key}} Try to set up a peer-to-peer tunnel on bob.
opt A tool that takes LLVM source files and runs specified optimizations and/or analyses on them. More information: https://llvm.org/docs/CommandGuide/opt.html. Run an optimization or analysis on a bitcode file: opt -{{passname}} {{path/to/file.bc}} -S -o {{file_opt.bc}} Output the Control Flow Graph of a function to a .dot file: opt {{-dot-cfg}} -S {{path/to/file.bc}} -disable-output Optimize the program at level 2 and output the result to another file: opt -O2 {{path/to/file.bc}} -S -o {{path/to/output_file.bc}}
optipng PNG file optimization utility. More information: http://optipng.sourceforge.net. Compress a PNG with default settings: optipng {{path/to/file.png}} Compress a PNG with the best compression: optipng -o{{7}} {{path/to/file.png}} Compress a PNG with the fastest compression: optipng -o{{0}} {{path/to/file.png}} Compress a PNG and add interlacing: optipng -i {{1}} {{path/to/file.png}} Compress a PNG and preserve all metadata (including file timestamps): optipng -preserve {{path/to/file.png}} Compress a PNG and remove all metadata: optipng -strip all {{path/to/file.png}}
opusenc Convert WAV or FLAC audio to Opus. More information: https://opus-codec.org/docs/opus-tools/opusenc.html. Convert WAV to Opus using default options: opusenc {{path/to/input.wav}} {{path/to/output}}.opus Convert stereo audio at the highest quality level: opusenc --bitrate {{512}} {{path/to/input.wav}} {{path/to/output}}.opus Convert 5.1 surround sound audio at the highest quality level: opusenc --bitrate {{1536}} {{path/to/input.flac}} {{path/to/output}}.opus Convert speech audio at the lowest quality level: opusenc {{path/to/input.wav}} --downmix-mono --bitrate {{6}} {{path/to/out}}.opus
orca-c A C-port of the ORCA live programming environment. ORCA is an esoteric programming language for creating procedural sequencers. More information: https://github.com/hundredrabbits/Orca-c. Start ORCA with an empty workspace: orca-c Start ORCA and open a specific file: orca-c {{path/to/file.orca}} Start ORCA and set a specific tempo (defaults to 120): orca-c --bpm {{beats_per_minute}} Start ORCA and set the size of the grid: orca-c --initial-size {{columns}}x{{rows}} Start ORCA and set the maximum number of undo steps (defaults to 100): orca-c --undo-limit {{limit}}
osage Render an image of a clustered network graph from a graphviz file. Layouts: dot, neato, twopi, circo, fdp, sfdp, osage & patchwork. More information: https://graphviz.org/doc/info/command.html. Render a png image with a filename based on the input filename and output format (uppercase -O): osage -T {{png}} -O {{path/to/input.gv}} Render a svg image with the specified output filename (lowercase -o): osage -T {{svg}} -o {{path/to/image.svg}} {{path/to/input.gv}} Render the output in ps, pdf, svg, fig, png, gif, jpg, json, or dot format: osage -T {{format}} -O {{path/to/input.
osmium Multipurpose tool for handling OpenStreetMap (OSM) files. More information: https://osmcode.org/osmium-tool/manual. Show file information: osmium fileinfo {{path/to/input.osm}} Display contents: osmium show {{path/to/input.osm}} Convert file format from PBF into XML: osmium cat {{path/to/input.osm.pbf}} -o {{path/to/output.osm}} Extract a geographic region by the given [b]ounding box: osmium extract -b {{min_longitude}},{{min_latitude}},{{max_longitude}},{{max_latitude}} {{path/to/input.pbf}} -o {{path/to/output.pbf}} Extract a geographic region by a GeoJSON file: osmium extract -p {{path/to/polygon.geojson}} {{path/to/input.pbf}} -o {{path/to/output.pbf}} Filter all objects tagged as “restaurant”: osmium tags-filter {{path/to/input.
osv-scanner Scan various mediums for dependencies and matches them against the OSV database. More information: https://osv.dev/about. Scan a docker image: osv-scanner -D {{docker_image_name}} Scan a package lockfile: osv-scanner -L {{path/to/lockfile}} Scan an SBOM file: osv-scanner -S {{path/to/sbom_file}} Scan multiple directories recursively: osv-scanner -r {{directory1 directory2 ...}} Skip scanning git repositories: osv-scanner --skip-git {{-r|-D}} {{target}} Output result in JSON format: osv-scanner --json {{-D|-L|-S|-r}} {{target}}
ouch Command-line utility for compressing and decompressing files and directories. More information: https://crates.io/crates/ouch. Decompress a specific file: ouch decompress {{path/to/archive.tar.xz}} Decompress a file to a specific location: ouch decompress {{path/to/archive.tar.xz}} --dir {{path/to/directory}} Decompress multiple files: ouch decompress {{path/to/archive1.tar path/to/archive2.tar.gz ...}} Compress files: ouch compress {{path/to/file1 path/to/file2 ...}} {{path/to/archive.zip}}
p10k Manage configurations for powerlevel10k. More information: https://github.com/romkatv/powerlevel10k. Configure powerlevel10k interactively: p10k configure Reload powerlevel10k: p10k reload Display help: p10k help
p4 Perforce Version Control System. More information: https://www.perforce.com/manuals/cmdref. Log in to the Perforce service: p4 login -a Create a client: p4 client Copy files from depot into the client workspace: p4 sync Create or edit changelist description: p4 change Open a file to edit: p4 edit -c {{changelist_number}} {{path/to/file}} Open a new file to add it to the depot: p4 add Display list of files modified by changelist: p4 describe -c {{changelist_number}}
p5 Template builder and sketch manager for p5.js. More information: https://github.com/chiunhau/p5-manager. Create a new p5 collection: p5 new {{collection_name}} Generate a new p5 project (should be run from collection directory): p5 generate {{project_name}} Run the p5 manager server: p5 server Update libraries to their latest versions: p5 update
p7zip Wrapper of 7-Zip file archiver with high compression ratio. Internally executes either 7za or 7zr command. More information: http://p7zip.sourceforge.net. Archive a file, replacing it with a 7zipped compressed version: p7zip {{path/to/file}} Archive a file keeping the input file: p7zip -k {{path/to/file}} Decompress a file, replacing it with the original uncompressed version: p7zip -d {{compressed.ext}}.7z Decompress a file keeping the input file: p7zip -d -k {{compressed.ext}}.7z Skip some checks and force compression or decompression: p7zip -f {{path/to/file}}
paci A package manager for Bash scripts. More information: https://github.com/tradebyte/paci. Update the list of available packages and versions (it’s recommended to run this before other paci commands): paci refresh Configure its behaviour: paci configure Search for a given package: paci search {{package}} Install a package: paci install {{package}} Update a package: paci update {{package}}
packer Build automated machine images. More information: https://www.packer.io/. Build an image: packer build {{path/to/config.json}} Check the syntax of a Packer image config: packer validate {{path/to/config.json}}
packtpub Download freely offered books from packtpub.com. More information: https://github.com/vladimyr/packtpub-cli. Download the daily offer book into the current directory with the specified book format (defaults to pdf): packtpub download --type {{pdf|ebup|mobi}} Download the daily offer book into the specified directory: packtpub download --dir {{path/to/directory}} Start an interactive login to packtpub.com: packtpub login Log out from packtpub.com: packtpub logout Display the daily offer: packtpub view-offer Open the daily offer in the default web browser: packtpub view-offer
packwiz Create, edit and manage Minecraft modpacks. More information: https://packwiz.infra.link/reference/commands/packwiz/. Interactively create a new modpack in the current directory: packwiz init Add a mod from Modrinth or Curseforge: packwiz {{modrinth|curseforge}} add {{url|slug|search_term}} List all mods in the modpack: packwiz list Update index.toml after manually editing files: packwiz refresh Export as a Modrinth (.mrpack) or Curseforge (.zip) file: packwiz {{modrinth|curseforge}} export
pactl Control a running PulseAudio sound server. More information: https://manned.org/pactl. List all sinks (or other types - sinks are outputs and sink-inputs are active audio streams): pactl list {{sinks}} short Change the default sink (output) to 1 (the number can be retrieved via the list subcommand): pactl set-default-sink {{1}} Move sink-input 627 to sink 1: pactl move-sink-input {{627}} {{1}} Set the volume of sink 1 to 75%: pactl set-sink-volume {{1}} {{0.
pageres Capture screenshots of websites in various resolutions. More information: https://github.com/sindresorhus/pageres-cli. Take multiple screenshots of multiple URLs at different resolutions: pageres {{https://example.com/}} {{https://example2.com/}} {{1366x768}} {{1600x900}} Provide specific options for a URL, overriding global options: pageres [{{https://example.com/}} {{1366x768}} --no-crop] [{{https://example2.com/}} {{1024x768}}] --crop Provide a custom filename template: pageres {{https://example.com/}} {{1024x768}} --filename={{'<%= date %> - <%= url %>'}} Capture a specific element on a page: pageres {{https://example.com/}} {{1366x768}} --selector='{{.page-header}}' Hide a specific element: pageres {{https://example.
pake Turn any webpage into a desktop app with Rust/Tauri. More information: https://github.com/tw93/Pake. Package a web page: pake {{https://www.google.com/}} Package a web page with a specific window size: pake --width {{800}} --height {{600}} {{https://www.google.com/}} Package a web page with a custom application name and icon: pake --name {{Google}} --icon {{path/to/icon.ico}} {{https://www.google.com/}} Package a web page with a non-resizable window: pake --no-resizable {{https://www.google.com/}} Package a web page with fullscreen mode: pake --fullscreen {{https://www.
pamixer A simple command-line mixer for PulseAudio. More information: https://github.com/cdemoulins/pamixer. List all sinks and sources with their corresponding IDs: pamixer --list-sinks --list-sources Set the volume to 75% on the default sink: pamixer --set-volume {{75}} Toggle mute on a sink other than the default: pamixer --toggle-mute --sink {{ID}} Increase the volume on default sink by 5%: pamixer --increase {{5}} Decrease the volume on a source by 5%: pamixer --decrease {{5}} --source {{ID}}
pandoc Convert documents between various formats. More information: https://pandoc.org. Convert file to PDF (the output format is determined by file extension): pandoc {{input.md}} -o {{output.pdf}} Force conversion to use a specific format: pandoc {{input.docx}} --to {{gfm}} -o {{output.md}} Convert to a standalone file with the appropriate headers/footers (for LaTeX, HTML, etc.): pandoc {{input.md}} -s -o {{output.tex}} List all supported input formats: pandoc --list-input-formats List all supported output formats: pandoc --list-output-formats
paperkey An OpenPGP key archiver. More information: https://www.jabberwocky.com/software/paperkey/. Take a specific secret key and generate a text file with the secret data: paperkey --secret-key {{path/to/secret_key.gpg}} --output {{path/to/secret_data.txt}} Take the secret key data in secret_data.txt and combine it with the public key to reconstruct the secret key: paperkey --pubring {{path/to/public_key.gpg}} --secrets {{path/to/secret_data.txt}} --output {{secret_key.gpg}} Export a specific secret key and generate a text file with the secret data: gpg --export-secret-key {{key}} | paperkey --output {{path/to/secret_data.
parallel Run commands on multiple CPU cores. More information: https://www.gnu.org/software/parallel. Gzip several files at once, using all cores: parallel gzip ::: {{file1}} {{file2}} {{file3}} Read arguments from stdin, run 4 jobs at once: ls *.txt | parallel -j4 gzip Convert JPG images to PNG using replacement strings: parallel convert {} {.}.png ::: *.jpg Parallel xargs, cram as many args as possible onto one command: {{args}} | parallel -X {{command}} Break stdin into ~1M blocks, feed each block to stdin of new command: cat {{big_file.
parallel-lint A tool to check the syntax of PHP files in parallel. More information: https://github.com/JakubOnderka/PHP-Parallel-Lint. Lint a specific directory: parallel-lint {{path/to/directory}} Lint a directory using the specified number of parallel processes: parallel-lint -j {{processes}} {{path/to/directory}} Lint a directory, excluding the specified directory: parallel-lint --exclude {{path/to/excluded_directory}} {{path/to/directory}} Lint a directory of files using a comma-separated list of extension(s): parallel-lint -e {{php,html,phpt}} {{path/to/directory}} Lint a directory and output the results as JSON: parallel-lint --json {{path/to/directory}}
parquet-tools A tool to show, inspect and manipulate Parquet file. More information: https://github.com/apache/parquet-mr/tree/master/parquet-tools-deprecated. Display the content of a Parquet file: parquet-tools cat {{path/to/parquet}} Display the first few lines of a Parquet file: parquet-tools head {{path/to/parquet}} Print the schema of a Parquet file: parquet-tools schema {{path/to/parquet}} Print the metadata of a Parquet file: parquet-tools meta {{path/to/parquet}} Print the content and metadata of a Parquet file: parquet-tools dump {{path/to/parquet}} Concatenate several Parquet files into the target one: parquet-tools merge {{path/to/parquet1}} {{path/to/parquet2}} {{path/to/target_parquet}}
particle Interact with Particle devices. More information: https://docs.particle.io/tutorials/developer-tools/cli. Log in or create an account for the Particle CLI: particle setup Display a list of devices: particle list Create a new Particle project interactively: particle project create Compile a Particle project: particle compile {{device_type}} {{path/to/source_code.ino}} Update a device to use a specific app remotely: particle flash {{device_name}} {{path/to/program.bin}} Update a device to use the latest firmware via serial: particle flash --serial {{path/to/firmware.
pass Tool for storing and reading passwords or other sensitive data. All data is GPG-encrypted, and managed with a Git repository. More information: https://www.passwordstore.org. Initialize (or re-encrypt) the storage using one or more GPG IDs: pass init {{gpg_id_1}} {{gpg_id_2}} Save a new password and additional information (press Ctrl + D on a new line to complete): pass insert --multiline {{path/to/data}} Edit an entry: pass edit {{path/to/data}} Copy a password (first line of the data file) to the clipboard: pass -c {{path/to/data}}
pass otp A pass extension for managing one-time-password (OTP) tokens. More information: https://github.com/tadfisher/pass-otp#readme. Prompt for an otpauth URI token and create a new pass file: pass otp insert {{path/to/pass}} Prompt for an otpauth URI token and append to an existing pass file: pass otp append {{path/to/pass}} Print a 2FA code using the OTP token in a pass file: pass otp {{path/to/pass}} Copy and don’t print a 2FA code using the OTP token in a pass file: pass otp --clip {{path/to/pass}}
passwd Passwd is a tool used to change a user’s password. More information: https://manned.org/passwd. Change the password of the current user interactively: passwd Change the password of a specific user: passwd {{username}} Get the current status of the user: passwd -S Make the password of the account blank (it will set the named account passwordless): passwd -d
paste Merge lines of files. More information: https://www.gnu.org/software/coreutils/paste. Join all the lines into a single line, using TAB as delimiter: paste -s {{path/to/file}} Join all the lines into a single line, using the specified delimiter: paste -s -d {{delimiter}} {{path/to/file}} Merge two files side by side, each in its column, using TAB as delimiter: paste {{file1}} {{file2}} Merge two files side by side, each in its column, using the specified delimiter: paste -d {{delimiter}} {{file1}} {{file2}}
pastel Generate, analyze, convert and manipulate colors. More information: https://github.com/sharkdp/pastel. Convert colors from one format to another. Here from RGB to HSL: pastel format {{hsl}} {{ff8000}} Show and analyze colors on the terminal: pastel color "{{rgb(255,50,127)}}" Pick a color from somewhere on the screen: pastel pick Generate a set of N visually distinct colors: pastel distinct {{8}} Get a list of all X11/CSS color names: pastel list
patch Patch a file (or files) with a diff file. Note that diff files should be generated by the diff command. More information: https://manned.org/patch. Apply a patch using a diff file (filenames must be included in the diff file): patch < {{patch.diff}} Apply a patch to a specific file: patch {{path/to/file}} < {{patch.diff}} Patch a file writing the result to a different file: patch {{path/to/input_file}} -o {{path/to/output_file}} < {{patch.diff}} Apply a patch to the current directory: patch -p1 < {{patch.
patchwork Render an image of a squareified treemap network graph from a graphviz file. Layouts: dot, neato, twopi, circo, fdp, sfdp, osage & patchwork. More information: https://graphviz.org/doc/info/command.html. Render a png image with a filename based on the input filename and output format (uppercase -O): patchwork -T {{png}} -O {{path/to/input.gv}} Render a svg image with the specified output filename (lowercase -o): patchwork -T {{svg}} -o {{path/to/image.svg}} {{path/to/input.gv}} Render the output in ps, pdf, svg, fig, png, gif, jpg, json, or dot format: patchwork -T {{format}} -O {{path/to/input.
pathchk Check the validity and portability of one or more pathnames. More information: https://www.gnu.org/software/coreutils/pathchk. Check pathnames for validity in the current system: pathchk {{path1 path2 …}} Check pathnames for validity on a wider range of POSIX compliant systems: pathchk -p {{path1 path2 …}} Check pathnames for validity on all POSIX compliant systems: pathchk --portability {{path1 path2 …}} Only check for empty pathnames or leading dashes (-): pathchk -P {{path1 path2 …}}
pax Archiving and copying utility. More information: https://manned.org/pax.1p. List the contents of an archive: pax -f {{archive.tar}} List the contents of a gzipped archive: pax -zf {{archive.tar.gz}} Create an archive from files: pax -wf {{target.tar}} {{path/to/file1}} {{path/to/file2}} {{path/to/file3}} Create an archive from files, using output redirection: pax -w {{path/to/file1}} {{path/to/file2}} {{path/to/file3}} > {{target.tar}} Extract an archive into the current directory: pax -rf {{source.tar}} Copy to a directory, while keeping the original metadata; target/ must exist: pax -rw {{path/to/file1}} {{path/to/directory1}} {{path/to/directory2}} {{target/}}
pdf-parser Identify fundamental elements of a PDF file without rendering it. More information: https://blog.didierstevens.com/programs/pdf-tools. Display statistics for a PDF file: pdf-parser --stats {{path/to/file.pdf}} Display objects of type /Font in a PDF file: pdf-parser --type={{/Font}} {{path/to/file.pdf}} Search for strings in indirect objects: pdf-parser --search={{search_string}} {{path/to/file.pdf}}
pdffonts Portable Document Format (PDF) file fonts information viewer. More information: https://www.xpdfreader.com/pdffonts-man.html. Print PDF file fonts information: pdffonts {{path/to/file.pdf}} Specify user password for PDF file to bypass security restrictions: pdffonts -upw {{password}} {{path/to/file.pdf}} Specify owner password for PDF file to bypass security restrictions: pdffonts -opw {{password}} {{path/to/file.pdf}} Print additional information on location of the font that will be used when the PDF file is rasterized: pdffonts -loc {{path/to/file.pdf}} Print additional information on location of the font that will be used when the PDF file is converted to PostScript: pdffonts -locPS {{path/to/file.
pdfgrep Search text in PDF files. More information: https://pdfgrep.org. Find lines that match pattern in a PDF: pdfgrep {{pattern}} {{file.pdf}} Include file name and page number for each matched line: pdfgrep --with-filename --page-number {{pattern}} {{file.pdf}} Do a case-insensitive search for lines that begin with “foo” and return the first 3 matches: pdfgrep --max-count {{3}} --ignore-case {{'^foo'}} {{file.pdf}} Find pattern in files with a .pdf extension in the current directory recursively: pdfgrep --recursive {{pattern}}
pdfimages Utility for extracting images from PDFs. More information: https://manned.org/pdfimages. Extract all images from a PDF file and save them as PNGs: pdfimages -png {{path/to/file.pdf}} {{filename_prefix}} Extract images from pages 3 to 5: pdfimages -f {{3}} -l {{5}} {{path/to/file.pdf}} {{filename_prefix}} Extract images from a PDF file and include the page number in the output filenames: pdfimages -p {{path/to/file.pdf}} {{filename_prefix}} List information about all the images in a PDF file: pdfimages -list {{path/to/file.
pdfinfo Portable Document Format (PDF) file information viewer. More information: https://www.xpdfreader.com/pdfinfo-man.html. Print PDF file information: pdfinfo {{path/to/file.pdf}} Specify user password for PDF file to bypass security restrictions: pdfinfo -upw {{password}} {{path/to/file.pdf}} Specify owner password for PDF file to bypass security restrictions: pdfinfo -opw {{password}} {{path/to/file.pdf}}
pdfjam Shell frontend for the LaTeX pdfpages package for mingling PDFs. More information: https://github.com/rrthomas/pdfjam. Merge two (or more) PDFs: pdfjam {{path/to/file1.pdf}} {{path/to/file2.pdf}} --outfile {{path/to/output_file.pdf}} Merge the first page of each file together: pdfjam {{files...}} 1 --outfile {{path/to/output_file.pdf}} Merge subranges from two PDFs: pdfjam {{path/to/file1.pdf 3-5,1}} {{path/to/file2.pdf 4-6}} --outfile {{path/to/output_file.pdf}} Sign an A4 page (adjust delta to height for other formats) with a scanned signature by overlaying them: pdfjam {{path/to/file.pdf}} {{path/to/signature}} --fitpaper true --outfile {{path/to/signed.
pdfjoin PDF merging utility based on pdfjam. More information: https://github.com/rrthomas/pdfjam-extras. Merge two PDFs into one with the default suffix “joined”: pdfjoin {{path/to/file1.pdf}} {{path/to/file2.pdf}} Merge the first page of each given file together: pdfjoin {{path/to/file1.pdf path/to/file2.pdf ...}} {{1}} --outfile {{output_file}} Save pages 3 to 5 followed by page 1 to a new PDF with custom suffix: pdfjoin {{path/to/file.pdf}} {{3-5,1}} --suffix {{rearranged}} Merge page subranges from two PDFs: pdfjoin {/path/to/file1.pdf}} {{2-}} {{file2}} {{last-3}} --outfile {{output_file}}
pdflatex Compile a PDF document from LaTeX source files. More information: https://manned.org/pdflatex. Compile a PDF document: pdflatex {{source.tex}} Compile a PDF document specifying an output directory: pdflatex -output-directory={{path/to/directory}} {{source.tex}} Compile a PDF document, exiting on each error: pdflatex -halt-on-error {{source.tex}}
pdfposter Convert a large-sheeted PDF into multiple A4 pages for printing. More information: https://pdfposter.readthedocs.io. Convert an A2 poster into 4 A4 pages: pdfposter --poster-size a2 {{input_file.pdf}} {{output_file.pdf}} Scale an A4 poster to A3 and then generate 2 A4 pages: pdfposter --scale 2 {{input_file.pdf}} {{output_file.pdf}}
pdfseparate Portable Document Format (PDF) file page extractor. More information: https://manpages.debian.org/latest/poppler-utils/pdfseparate.1.en.html. Extract pages from PDF file and make a separate PDF file for each page: pdfseparate {{path/to/source_filename.pdf}} {{path/to/destination_filename-%d.pdf}} Specify the first/start page for extraction: pdfseparate -f {{3}} {{path/to/source_filename.pdf}} {{path/to/destination_filename-%d.pdf}} Specify the last page for extraction: pdfseparate -l {{10}} {{path/to/source_filename.pdf}} {{path/to/destination_filename-%d.pdf}}
pdftex Compile a PDF document from TeX source files. More information: https://www.tug.org/applications/pdftex/. Compile a PDF document: pdftex {{source.tex}} Compile a PDF document, specifying an output directory: pdftex -output-directory={{path/to/directory}} {{source.tex}} Compile a PDF document, exiting on each error: pdftex -halt-on-error {{source.tex}}
pdftk PDF toolkit. More information: https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit. Extract pages 1-3, 5 and 6-10 from a PDF file and save them as another one: pdftk {{input.pdf}} cat {{1-3 5 6-10}} output {{output.pdf}} Merge (concatenate) a list of PDF files and save the result as another one: pdftk {{file1.pdf file2.pdf ...}} cat output {{output.pdf}} Split each page of a PDF file into a separate file, with a given filename output pattern: pdftk {{input.pdf}} burst output {{out_%d.
pdftocairo Converts PDF files to PNG/JPEG/TIFF/PDF/PS/EPS/SVG using cairo. More information: https://poppler.freedesktop.org. Convert a PDF file to JPEG: pdftocairo {{path/to/file.pdf}} -jpeg Convert to PDF expanding the output to fill the paper: pdftocairo {{path/to/file.pdf}} {{output.pdf}} -pdf -expand Convert to SVG specifying the first/last page to convert: pdftocairo {{path/to/file.pdf}} {{output.svg}} -svg -f {{first_page}} -l {{last_page}} Convert to PNG with 200ppi resolution: pdftocairo {{path/to/file.pdf}} {{output.png}} -png -r 200 Convert to grayscale TIFF setting paper size to A3: pdftocairo {{path/to/file.
pdftotext Convert PDF files to plain text format. More information: https://www.xpdfreader.com/pdftotext-man.html. Convert filename.pdf to plain text and print it to stdout: pdftotext {{filename.pdf}} - Convert filename.pdf to plain text and save it as filename.txt: pdftotext {{filename.pdf}} Convert filename.pdf to plain text and preserve the layout: pdftotext -layout {{filename.pdf}} Convert input.pdf to plain text and save it as output.txt: pdftotext {{input.pdf}} {{output.txt}} Convert pages 2, 3 and 4 of input.pdf to plain text and save them as output.
pdfunite PDF merging utility. More information: https://github.com/mtgrosser/pdfunite. Merge 2 PDFs into a single PDF: pdfunite {{path/to/fileA.pdf}} {{path/to/fileB.pdf}} {{path/to/merged_output.pdf}} Merge a directory of PDFs into a single PDF: pdfunite {{path/to/directory/*.pdf}} {{path/to/merged_output.pdf}}
peco Interactive filtering tool. More information: https://github.com/peco/peco. Start peco on all files in the specified directory: find {{path/to/directory}} -type f | peco Start peco for running processes: ps aux | peco Start peco with a specified query: peco --query "{{query}}"
peerflix Stream video- or audio-based torrents to a media player. More information: https://github.com/mafintosh/peerflix. Stream the largest media file in a torrent: peerflix "{{torrent_url|magnet_link}}" List all streamable files contained in a torrent (given as a magnet link): peerflix "{{magnet:?xt=urn:btih:0123456789abcdef0123456789abcdef01234567}}" --list Stream the largest file in a torrent, given as a torrent URL, to VLC: peerflix "{{http://example.net/music.torrent}}" --vlc Stream the largest file in a torrent to MPlayer, with subtitles: peerflix "{{torrent_url|magnet_link}}" --mplayer --subtitles {{subtitle-file.
peerindex Inspect MRT TABLE_DUMPV2 Peer Index Table. Can read files compressed with gzip, bzip2 and xz. More information: https://codeberg.org/1414codeforge/ubgpsuite. Output all peers: peerindex {{master6.mrt}} Display all peers that have provided routing information: peerindex -r {{master6.mrt}}
peludna-prognoza Fetch pollen measurement data for Croatian cities from your terminal using Pliva’s allergies data API. More information: https://github.com/vladimyr/peludna-prognoza. Start an interactive search for a city and fetch data for it: peludna-prognoza Fetch data for a city: peludna-prognoza "{{city}}" Display data in a machine-readable format: peludna-prognoza "{{city}}" --{{json|xml}} Display the pollen measurement page for a city at https://plivazdravlje.hr in the default web browser: peludna-prognoza "{{city}}" --web
perl The Perl 5 language interpreter. More information: https://www.perl.org. Parse and execute a Perl script: perl {{script.pl}} Check syntax errors on a Perl script: perl -c {{script.pl}} Parse and execute a Perl statement: perl -e {{perl_statement}} Run a Perl script in debug mode, using perldebug: perl -d {{script.pl}} Edit all file lines [i]n-place with a specific replacement [e]xpression, saving a backup with a new extension: perl -p -i'.{{extension}}' -e 's/{{regular_expression}}/{{replacement}}/g' {{path/to/file}}
pest A PHP testing framework with a focus on simplicity. More information: https://pestphp.com. Initialize a standard Pest configuration in the current directory: pest --init Run tests in the current directory: pest Run tests annotated with the given group: pest --group {{name}} Run tests and print the coverage report to stdout: pest --coverage Run tests with coverage and fail if the coverage is less than the minimum percentage: pest --coverage --min={{80}}
pfetch Display system information. More information: https://github.com/dylanaraps/pfetch. Display the ASCII art and default fields: pfetch Display only the ASCII art and color palette fields: PF_INFO="{{ascii palette}}" pfetch Display all possible fields: PF_INFO="{{ascii title os host kernel uptime pkgs memory shell editor wm de palette}}" pfetch Display a different username and hostname: USER="{{user}}" HOSTNAME="{{hostname}}" pfetch Display without colors: PF_COLOR={{0}} pfetch
pg_ctl Utility for controlling a PostgreSQL server and database cluster. More information: https://www.postgresql.org/docs/current/app-pg-ctl.html. Initialize a new PostgreSQL database cluster: pg_ctl -D {{data_directory}} init Start a PostgreSQL server: pg_ctl -D {{data_directory}} start Stop a PostgreSQL server: pg_ctl -D {{data_directory}} stop Restart a PostgreSQL server: pg_ctl -D {{data_directory}} restart Reload the PostgreSQL server configuration: pg_ctl -D {{data_directory}} reload
pg_dump Extract a PostgreSQL database into a script file or other archive file. More information: https://www.postgresql.org/docs/current/app-pgdump.html. Dump database into an SQL-script file: pg_dump {{db_name}} > {{output_file.sql}} Same as above, customize username: pg_dump -U {{username}} {{db_name}} > {{output_file.sql}} Same as above, customize host and port: pg_dump -h {{host}} -p {{port}} {{db_name}} > {{output_file.sql}} Dump a database into a custom-format archive file: pg_dump -Fc {{db_name}} > {{output_file.dump}} Dump only database data into an SQL-script file: pg_dump -a {{db_name}} > {{path/to/output_file.
pg_dumpall Extract a PostgreSQL database cluster into a script file or other archive file. More information: https://www.postgresql.org/docs/current/app-pg-dumpall.html. Dump all databases: pg_dumpall > {{path/to/file.sql}} Dump all databases using a specific username: pg_dumpall --username={{username}} > {{path/to/file.sql}} Same as above, customize host and port: pg_dumpall -h {{host}} -p {{port}} > {{output_file.sql}} Dump all databases into a custom-format archive file with moderate compression: pg_dumpall -Fc > {{output_file.dump}} Dump only database data into an SQL-script file: pg_dumpall --data-only > {{path/to/file.
pg_isready Check the connection status of a PostgreSQL server. More information: https://www.postgresql.org/docs/current/app-pg-isready.html. Check connection: pg_isready Check connection with a specific hostname and port: pg_isready --host={{hostname}} --port={{port}} Check connection displaying a message only when the connection fails: pg_isready --quiet
pg_restore Restore a PostgreSQL database from an archive file created by pg_dump. More information: https://www.postgresql.org/docs/current/app-pgrestore.html. Restore an archive into an existing database: pg_restore -d {{db_name}} {{archive_file.dump}} Same as above, customize username: pg_restore -U {{username}} -d {{db_name}} {{archive_file.dump}} Same as above, customize host and port: pg_restore -h {{host}} -p {{port}} -d {{db_name}} {{archive_file.dump}} List database objects included in the archive: pg_restore --list {{archive_file.dump}} Clean database objects before creating them: pg_restore --clean -d {{db_name}} {{archive_file.
pgbench Run a benchmark test on PostgreSQL. More information: https://www.postgresql.org/docs/10/pgbench.html. Initialize a database with a scale factor of 50 times the default size: pgbench --initialize --scale={{50}} {{database_name}} Benchmark a database with 10 clients, 2 worker threads, and 10,000 transactions per client: pgbench --client={{10}} --jobs={{2}} --transactions={{10000}} {{database_name}}
pgrep Find or signal processes by name. More information: https://www.man7.org/linux/man-pages/man1/pkill.1.html. Return PIDs of any running processes with a matching command string: pgrep {{process_name}} Search for processes including their command-line options: pgrep --full "{{process_name}} {{parameter}}" Search for processes run by a specific user: pgrep --euid root {{process_name}}
phan A static analysis tool for PHP. More information: https://github.com/phan/phan. Generate a .phan/config.php in the current directory: phan --init Generate a Phan configuration file using a specific level (1 being strictest to 5 being the least strict): phan --init --init-level {{level}} Analyze the current directory: phan Analyze one or more directories: phan --directory {{path/to/directory}} --directory {{path/to/another_directory}} Specify a config file (defaults to .phan/config.php): phan --config-file {{path/to/config.php}} Specify the output mode: phan --output-mode {{text|verbose|json|csv|codeclimate|checkstyle|pylint|html}}
phing A PHP build tool based on Apache Ant. More information: https://www.phing.info. Perform the default task in the build.xml file: phing Initialize a new build file: phing -i {{path/to/build.xml}} Perform a specific task: phing {{task_name}} Specify a custom build file path: phing -f {{path/to/build.xml}} {{task_name}} Specify a log file to output to: phing -b {{path/to/log_file}} {{task_name}} Specify custom properties to use in the build: phing -D{{property}}={{value}} {{task_name}} Specify a custom listener class: phing -listener {{class_name}} {{task_name}}
phive The Phar Installation and Verification Environment for secure PHP application deployment. More information: https://phar.io. Display a list of available aliased Phars: phive list Install a specified Phar to the local directory: phive install {{alias|url}} Install a specified Phar globally: phive install {{alias|url}} --global Install a specified Phar to a target directory: phive install {{alias|url}} --target {{path/to/directory}} Update all Phar files to the latest version: phive update Remove a specified Phar file: phive remove {{alias|url}}
php PHP command-line interface. More information: https://php.net. Parse and execute a PHP script: php {{path/to/file}} Check syntax on (i.e. lint) a PHP script: php -l {{path/to/file}} Run PHP interactively: php -a Run PHP code (Notes: Don’t use tags; escape double quotes with backslash): php -r "{{code}}" Start a PHP built-in web server in the current directory: php -S {{host:port}} Get a list of installed PHP extensions: php -m Display information about the current PHP configuration: php -i
php artisan Laravel’s Artisan command-line interface. More information: https://laravel.com/docs/artisan. Start PHP’s built-in web server for the current Laravel application: php artisan serve Start an interactive PHP command-line interface: php artisan tinker Generate a new Eloquent model class with a migration, factory and resource controller: php artisan make:model {{ModelName}} --all Display a list of all available commands: php artisan help
php-coveralls A PHP client for Coveralls. More information: https://php-coveralls.github.io/php-coveralls. Send coverage information to Coveralls: php-coveralls Send coverage information to Coveralls for a specific directory: php-coveralls --root_dir {{path/to/directory}} Send coverage information to Coveralls with a specific config: php-coveralls --config {{path/to/.coveralls.yml}} Send coverage information to Coveralls with verbose output: php-coveralls --verbose Send coverage information to Coveralls excluding source files with no executable statements: php-coveralls --exclude-no-stmt Send coverage information to Coveralls with a specific environment name: php-coveralls --env {{test|dev|prod}}
PHP-CS-Fixer Automatic coding style fixer for PHP. More information: https://github.com/FriendsOfPHP/PHP-CS-Fixer. Execute code style fixing in the current directory: php-cs-fixer fix Execute code style fixing for a specific directory: php-cs-fixer fix {{path/to/directory}} Execute code style linting without applying changes: php-cs-fixer fix --dry-run Execute code style fixes using specific rules: php-cs-fixer fix --rules={{rules}} Display the rules that have been applied: php-cs-fixer fix --verbose Output the results in a different format: php-cs-fixer fix --format={{txt|json|xml|checkstyle|junit|gitlab}}
php yii Yii Framework’s command-line interface. More information: https://yiiframework.com. Display a list of all available commands: php yii {{help}} Start PHP’s built-in web server for the current Yii application: php yii {{serve}} Generate a controller, views and related files for the CRUD actions on the specified model class: php yii {{gii/crud}} --modelClass={{ModelName}} --controllerClass={{ControllerName}}
phpbu A backup utility framework for PHP. More information: https://phpbu.de. Run backups using the default phpbu.xml configuration file: phpbu Run backups using a specific configuration file: phpbu --configuration={{path/to/configuration_file.xml}} Only run the specified backups: phpbu --limit={{backup_task_name}} Simulate the actions that would have been performed: phpbu --simulate
phpcbf Fix violations detected by phpcs. More information: https://github.com/squizlabs/PHP_CodeSniffer. Fix issues in the specified directory (defaults to the PEAR standard): phpcbf {{path/to/directory}} Display a list of installed coding standards: phpcbf -i Specify a coding standard to validate against: phpcbf {{path/to/directory}} --standard {{standard}} Specify comma-separated file extensions to include when sniffing: phpcbf {{path/to/directory}} --extensions {{file_extension(s)}} A comma-separated list of files to load before processing: phpcbf {{path/to/directory}} --bootstrap {{file(s)}} Don’t recurse into subdirectories: phpcbf {{path/to/directory}} -l
phpcpd A copy and paste detector for PHP code. More information: https://github.com/sebastianbergmann/phpcpd. Analyze duplicated code for a specific file or directory: phpcpd {{path/to/file_or_directory}} Analyze using fuzzy matching for variable names: phpcpd --fuzzy {{path/to/file_or_directory}} Specify a minimum number of identical lines (defaults to 5): phpcpd --min-lines {{number_of_lines}} {{path/to/file_or_directory}} Specify a minimum number of identical tokens (defaults to 70): phpcpd --min-tokens {{number_of_tokens}} {{path/to/file_or_directory}} Exclude a directory from analysis (must be relative to the source): phpcpd --exclude {{path/to/excluded_directory}} {{path/to/file_or_directory}}
phpcs Tokenize PHP, JavaScript and CSS files to detect violations of a defined set of coding standards. More information: https://github.com/squizlabs/PHP_CodeSniffer. Sniff the specified directory for issues (defaults to the PEAR standard): phpcs {{path/to/directory}} Display a list of installed coding standards: phpcs -i Specify a coding standard to validate against: phpcs {{path/to/directory}} --standard {{standard}} Specify comma-separated file extensions to include when sniffing: phpcs {{path/to/directory}} --extensions {{file_extension(s)}} Specify the format of the output report (e.
phpdox A PHP documentation generator. More information: https://phpdox.net. Display an annotated skeleton configuration XML file: phpdox --skel Generate documentation for the current working directory: phpdox Generate documentation using a specific configuration file: phpdox --file {{path/to/phpdox.xml}} Only run the metadata collection process: phpdox --collector Only run the documentation generator process: phpdox --generator
phpenv A PHP version manager for development purposes. More information: https://github.com/phpenv/phpenv. Install a PHP version globally: phpenv install {{version}} Refresh shim files for all PHP binaries known to phpenv: phpenv rehash List all installed PHP versions: phpenv versions Display the currently active PHP version: phpenv version Set the global PHP version: phpenv global {{version}} Set the local PHP version, which overrides the global version: phpenv local {{version}} Unset the local PHP version: phpenv local --unset
phpize Prepare a PHP extension for compiling. More information: https://www.php.net/manual/install.pecl.phpize. Prepare the PHP extension in the current directory for compiling: phpize Delete files previously created by phpize: phpize --clean
phploc A tool for quickly measuring the size and analyzing the structure of a PHP project. More information: https://github.com/sebastianbergmann/phploc. Analyze a directory and print the result: phploc {{path/to/directory}} Include only specific files from a comma-separated list (globs are allowed): phploc {{path/to/directory}} --names {{files}} Exclude specific files from a comma-separated list (globs are allowed): phploc {{path/to/directory}} --names-exclude {{files}} Exclude a specific directory from analysis: phploc {{path/to/directory}} --exclude {{path/to/exclude_directory}} Log the results to a specific CSV file: phploc {{path/to/directory}} --log-csv {{path/to/file}}
phpmd A PHP mess detector that checks for common potential problems. More information: https://github.com/phpmd/phpmd. Display a list of available rulesets and formats: phpmd Scan a file or directory for problems using comma-separated rulesets: phpmd {{path/to/file_or_directory}} {{xml|text|html}} {{rulesets}} Specify the minimum priority threshold for rules: phpmd {{path/to/file_or_directory}} {{xml|text|html}} {{rulesets}} --minimumpriority {{priority}} Include only the specified extensions in analysis: phpmd {{path/to/file_or_directory}} {{xml|text|html}} {{rulesets}} --suffixes {{extensions}} Exclude the specified comma-separated directories: phpmd {{path/to/file_or_directory}} {{xml|text|html}} {{rulesets}} --exclude {{directory_patterns}}
phpspec A Behaviour Driven Development tool for PHP. More information: https://phpspec.net. Create a specification for a class: phpspec describe {{class_name}} Run all specifications in the “spec” directory: phpspec run Run a single specification: phpspec run {{path/to/class_specification_file}} Run specifications using a specific configuration file: phpspec run -c {{path/to/configuration_file}} Run specifications using a specific bootstrap file: phpspec run -b {{path/to/bootstrap_file}} Disable code generation prompts: phpspec run --no-code-generation Enable fake return values: phpspec run --fake
phpstan A PHP static analysis tool to discover bugs in code. More information: https://github.com/phpstan/phpstan. Display available options for analysis: phpstan analyse --help Analyze the specified space-separated directories: phpstan analyse {{path/to/directory}} Analyze a directory using a configuration file: phpstan analyse {{path/to/directory}} --configuration {{path/to/config}} Analyze using a specific rule level (0-7, higher is stricter): phpstan analyse {{path/to/directory}} --level {{level}} Specify an autoload file to load before analyzing: phpstan analyse {{path/to/directory}} --autoload-file {{path/to/autoload_file}}
phpstorm A cross-platform IDE for PHP based on the JetBrains IntelliJ platform. More information: https://jetbrains.com/phpstorm. Open a specific directory: phpstorm {{path/to/directory}} Open a file: phpstorm {{path/to/file}} Open a file at a specific line: phpstorm --line {{line_number}} {{path/to/file}} View the differences between two files: phpstorm diff {{path/to/left_file}} {{path/to/right_file}}
phpunit PHPUnit command-line test runner. More information: https://phpunit.de. Run tests in the current directory. Note: Expects you to have a ‘phpunit.xml’: phpunit Run tests in a specific file: phpunit {{path/to/TestFile.php}} Run tests annotated with the given group: phpunit --group {{name}} Run tests and generate a coverage report in HTML: phpunit --coverage-html {{path/to/directory}}
piactl The command-line tool for Private Internet Access, a commercial VPN provider. More information: https://helpdesk.privateinternetaccess.com/kb/articles/pia-desktop-command-line-interface-part-1. Log in to Private Internet Access: piactl login {{path/to/login_file}} Connect to Private Internet Access: piactl connect Disconnect from Private Internet Access: piactl disconnect Enable or disable the Private Internet Access daemon in the background: piactl background {{enable|disable}} List all available VPN regions: piactl get regions Display the current VPN region: piactl get region Set your VPN region: piactl set region {{region}}
pic Picture preprocessor for the groff (GNU Troff) document formatting system. See also groff and troff. More information: https://manned.org/pic. Process input with pictures, saving the output for future typesetting with groff to PostScript: pic {{path/to/input.pic}} > {{path/to/output.roff}} Typeset input with pictures to PDF using the [me] macro package: pic -T {{pdf}} {{path/to/input.pic}} | groff -{{me}} -T {{pdf}} > {{path/to/output.pdf}}
picard Next generation MusicBrainz tagging application. More information: https://picard.musicbrainz.org/. Start Picard: picard Open a set of files: picard {{path/to/file1.mp3}} {{path/to/file2.mp3}} Display the version of Picard installed: picard --long-version
pickle A PHP extension installer based on Composer. More information: https://github.com/FriendsOfPHP/pickle. Install a specific PHP extension: pickle install {{extension_name}} Convert an existing PECL extension configuration to a Pickle configuration file: pickle convert {{path/to/directory}} Validate a PECL extension: pickle validate {{path/to/directory}} Package a PECL extension for release: pickle release {{path/to/directory}}
picom-trans Set the window opacity for the picom window compositor. More information: https://github.com/yshui/picom. Set the currently focused window opacity to a specific percentage: picom-trans --current --opacity {{90}} Set the opacity of a window with a specific name: picom-trans --name {{Firefox}} --opacity {{90}} Set the opacity of a specific window selected via mouse cursor: picom-trans --select --opacity {{90}} Toggle the opacity of a specific window: picom-trans --name {{Firefox}} --toggle
pigz Multithreaded zlib compression utility. More information: https://github.com/madler/pigz. Compress a file with default options: pigz {{path/to/file}} Compress a file using the best compression method: pigz -9 {{path/to/file}} Compress a file using no compression and 4 processors: pigz -0 -p{{4}} {{path/to/file}} Compress a directory using tar: tar cf - {{path/to/directory}} | pigz > {{path/to/file}}.tar.gz Decompress a file: pigz -d {{archive.gz}} List the contents of an archive: pigz -l {{archive.tar.gz}}
ping Send ICMP ECHO_REQUEST packets to network hosts. More information: https://manned.org/ping. Ping host: ping {{host}} Ping a host only a specific number of times: ping -c {{count}} {{host}} Ping host, specifying the interval in seconds between requests (default is 1 second): ping -i {{seconds}} {{host}} Ping host without trying to lookup symbolic names for addresses: ping -n {{host}} Ping host and ring the bell when a packet is received (if your terminal supports it): ping -a {{host}}
ping6 Send ICMP ECHO_REQUEST packets to network hosts via IPv6 address. More information: https://manned.org/ping6. Ping a host: ping6 {{host}} Ping a host only a specific number of times: ping6 -c {{count}} {{host}} Ping a host, specifying the interval in seconds between requests (default is 1 second): ping6 -i {{seconds}} {{host}} Ping a host without trying to lookup symbolic names for addresses: ping6 -n {{host}} Ping a host and ring the bell when a packet is received (if your terminal supports it): ping6 -a {{host}}
pinky Print user information using the finger protocol. More information: https://manned.org/pinky. Display details about the current user: pinky Display details for a specific user: pinky {{user}} Display details in the long format: pinky {{user}} -l Omit the user’s home directory and shell in long format: pinky {{user}} -lb Omit the user’s project file in long format: pinky {{user}} -lh Omit the column headings in short format: pinky {{user}} -f
Pint An opinionated PHP code style fixer based on PHP-CS-Fixer. More information: https://laravel.com/docs/pint. Execute code style fixing: pint Display all files that are changed: pint -v Execute code style linting without applying changes: pint --test Execute code style fixes using a specific config file: pint --config {{path/to/pint.json}} Execute code style fixes using a specific preset: pint --preset {{psr12}}
pinta Pinta is a free, open source program for drawing and image editing. More information: https://www.pinta-project.com/. Start Pinta: pinta Open specific files: pinta {{path/to/image1 path/to/image2 ...}}
pio Development environment for embedded boards. Some subcommands such as pio run have their own usage documentation. More information: https://docs.platformio.org/en/latest/core/userguide/. Show help and list subcommands: pio --help Print the version number and exit: pio --version Show help for a specific subcommand: pio {{subcommand}} --help
pio access Set the access level on published resources (packages) in the registry. More information: https://docs.platformio.org/en/latest/core/userguide/access/. Grant a user access to a resource: pio access grant {{guest|maintainer|admin}} {{username}} {{resource_urn}} Remove a user’s access to a resource: pio access revoke {{username}} {{resource_urn}} Show all resources that a user or team has access to and the access level: pio access list {{username}} Restrict access to a resource to specific users or team members: pio access private {{resource_urn}}
pio account Manage your PlatformIO account in the command-line. More information: https://docs.platformio.org/en/latest/core/userguide/account/. Register a new PlatformIO account: pio account register --username {{username}} --email {{email}} --password {{password}} --firstname {{firstname}} --lastname {{lastname}} Permanently delete your PlatformIO account and related data: pio account destroy Log in to your PlatformIO account: pio account login --username {{username}} --password {{password}} Log out of your PlatformIO account: pio account logout Update your PlatformIO profile: pio account update --username {{username}} --email {{email}} --firstname {{firstname}} --lastname {{lastname}} --current-password {{password}}
pio boards List pre-configured embedded boards available in PlatformIO. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_boards.html. List all available boards: pio boards List only boards from installed platforms: pio boards --installed
pio check Perform a static analysis check on a PlatformIO project. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_check.html. Perform a basic analysis check on the current project: pio check Perform a basic analysis check on a specific project: pio check --project-dir {{project_dir}} Perform an analysis check for a specific environment: pio check --environment {{environment}} Perform an analysis check and only report a specified defect severity type: pio check --severity {{low|medium|high}} Perform an analysis check and show detailed information when processing environments: pio check --verbose
pio ci Build PlatformIO projects with an arbitrary source code structure. This will create a new temporary project which the source code will be copied into. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_ci.html. Build a PlatformIO project in the default system temporary directory and delete it afterwards: pio ci {{path/to/project}} Build a PlatformIO project and specify specific libraries: pio ci --lib {{path/to/library_directory}} {{path/to/project}} Build a PlatformIO project and specify a specific board (pio boards lists all of them): pio ci --board {{board}} {{path/to/project}}
pio debug Debug PlatformIO projects. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_debug.html. Debug the PlatformIO project in the current directory: pio debug Debug a specific PlatformIO project: pio debug --project-dir {{path/to/platformio_project}} Debug a specific environment: pio debug --environment {{environment}} Debug a PlatformIO project using a specific configuration file: pio debug --project-conf {{path/to/platformio.ini}} Debug a PlatformIO project using the gdb debugger: pio debug --interface={{gdb}} {{gdb_options}}
pio device Manage and monitor PlatformIO devices. More information: https://docs.platformio.org/en/latest/core/userguide/device/. List all available serial ports: pio device list List all available logical devices: pio device list --logical Start an interactive device monitor: pio device monitor Start an interactive device monitor and listen to a specific port: pio device monitor --port {{/dev/ttyUSBX}} Start an interactive device monitor and set a specific baud rate (defaults to 9600): pio device monitor --baud {{57600}}
pio home Launch the PlatformIO Home web server. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_home.html. Open PlatformIO Home in the default web browser: pio home Use a specific HTTP port (defaults to 8008): pio home --port {{port}} Bind to a specific IP address (defaults to 127.0.0.1): pio home --host {{ip_address}} Do not automatically open PlatformIO Home in the default web browser: pio home --no-open Automatically shutdown the server on timeout (in seconds) when no clients are connected: pio home --shutdown-timeout {{time}}
pio init This command is an alias of pio project init. View documentation for the original command: tldr pio project
pio lib Manage PlatformIO libraries. More information: https://docs.platformio.org/en/latest/core/userguide/lib/. List installed libraries: pio lib list List built-in libraries based on installed development platforms and their frameworks: pio lib builtin Search for existing libraries: pio lib search {{keyword}} Show details about a library: pio lib show {{library}} Install a library: pio lib install {{library}} Update installed libraries: pio lib update Uninstall a library: pio lib uninstall {{library}} Show PlatformIO library registry statistics: pio lib stats
pio org Manage PlatformIO organizations and their owners. More information: https://docs.platformio.org/en/latest/core/userguide/org/. Create a new organization: pio org create {{organization_name}} Delete an organization: pio org destroy {{organization_name}} Add a user to an organization: pio org add {{organization_name}} {{username}} Remove a user from an organization: pio org remove {{organization_name}} {{username}} List all organizations the current user is a member of and their owners: pio org list Update the name, email or display name of an organization: pio org update --orgname {{new_organization_name}} --email {{new_email}} --displayname {{new_display_name}} {{organization_name}}
pio package Manage packages in the registry. Packages can only be removed within 72 hours (3 days) from the date that they are published. More information: https://docs.platformio.org/en/latest/core/userguide/package/. Create a package tarball from the current directory: pio package pack --output {{path/to/package.tar.gz}} Create and publish a package tarball from the current directory: pio package publish Publish the current directory and restrict public access to it: pio package publish --private Publish a package: pio package publish {{path/to/package.
pio platform Manage PlatformIO development platforms. More information: https://docs.platformio.org/en/latest/core/userguide/platforms/. List all installed development platforms: pio platform list Search for existing development platforms: pio platform search {{platform}} Show details about a development platform: pio platform show {{platform}} Install a development platform: pio platform install {{platform}} Update installed development platforms: pio platform update Uninstall a development platform: pio platform uninstall {{platform}} List all supported frameworks: pio platform frameworks
pio project Tool to manage PlatformIO projects. More information: https://docs.platformio.org/en/latest/core/userguide/project/. Initialize a new PlatformIO project: pio project init Initialize a new PlatformIO project in a specific directory: pio project init --project-dir {{path/to/project_directory}} Initialize a new PlatformIO project, specifying a board ID: pio project init --board {{ATmega328P|uno|...}} Initialize a new PlatformIO based project, specifying one or more project options: pio project init --project-option="{{option}}={{value}}" --project-option="{{option}}={{value}}" Print the configuration of a project: pio project config
pio remote Helper command for PlatformIO Remote Development. pio remote [command] takes the same arguments as its locally executing counterpart pio [command]. More information: https://docs.platformio.org/en/latest/core/userguide/remote/index.html. List all active Remote Agents: pio remote agent list Start a new Remote Agent with a specific name and share it with friends: pio remote agent start --name {{agent_name}} --share {{example1@example.com}} --share {{example2@example.com}} List devices from specified Agents (omit --agent to specify all Agents): pio remote --agent {{agent_name1}} --agent {{agent_name2}} device list
pio run Run PlatformIO project targets. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_run.html. List all available project targets: pio run --list-targets List all available project targets of a specific environment: pio run --list-targets --environment {{environment}} Run all targets: pio run Run all targets of specified environments: pio run --environment {{environment1}} --environment {{environment2}} Run specified targets: pio run --target {{target1}} --target {{target2}} Run the targets of a specified configuration file: pio run --project-conf {{path/to/platformio.ini}}
pio settings View and modify PlatformIO settings. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_settings.html. Display the names, values and descriptions of all PlatformIO settings: pio settings get Display the name, value and description of a specific PlatformIO setting: pio settings get {{setting}} Set a specific setting value: pio settings set {{setting}} {{value}} Reset the values of all modified settings to their factory defaults: pio settings reset
pio system Miscellaneous system commands for PlatformIO. More information: https://docs.platformio.org/en/latest/core/userguide/system/. Install shell completion for the current shell (supports Bash, Fish, Zsh and PowerShell): pio system completion install Uninstall shell completion for the current shell: pio system completion uninstall Display system-wide PlatformIO information: pio system info Remove unused PlatformIO data: pio system prune Remove only cached data: pio system prune --cache List unused PlatformIO data that would be removed but do not actually remove it: pio system prune --dry-run
pio team Manage PlatformIO teams. More information: https://docs.platformio.org/en/latest/core/userguide/team/. Create a new team with the specified description: pio team create --description {{description}} {{organization_name}}:{{team_name}} Delete a team: pio team destroy {{organization_name}}:{{team_name}} Add a new user to a team: pio team add {{organization_name}}:{{team_name}} {{username}} Remove a user from a team: pio team remove {{organization_name}}:{{team_name}} {{username}} List all teams that the user is part of and their members: pio team list List all teams in an organization: pio team list {{organization_name}}
pio test Run local tests on a PlatformIO project. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_test.html. Run all tests in all environments of the current PlatformIO project: pio test Test only specific environments: pio test --environment {{environment1}} --environment {{environment2}} Run only tests whose name matches a specific glob pattern: pio test --filter "{{pattern}}" Ignore tests whose name matches a specific glob pattern: pio test --ignore "{{pattern}}" Specify a port for firmware uploading: pio test --upload-port {{upload_port}}
pio update Update installed PlatformIO Core packages, development platforms and global libraries. See also: pio platform update, pio lib update. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_update.html. Perform a full update of all packages, development platforms and global libraries: pio update Update core packages only (skips platforms and libraries): pio update --core-packages Check for new versions of packages, platforms and libraries but do not actually update them: pio update --dry-run
pio upgrade Update PlatformIO to the latest version. More information: https://docs.platformio.org/en/latest/core/userguide/cmd_upgrade.html. Update PlatformIO to the latest version: pio upgrade Update PlatformIO to the latest development (unstable) version: pio upgrade --dev
piodebuggdb This command is an alias of pio debug --interface=gdb. View documentation for the original command: tldr pio debug
pip Python package manager. Some subcommands such as pip install have their own usage documentation. More information: https://pip.pypa.io. Install a package (see pip install for more install examples): pip install {{package}} Install a package to the user’s directory instead of the system-wide default location: pip install --user {{package}} Upgrade a package: pip install --upgrade {{package}} Uninstall a package: pip uninstall {{package}} Save installed packages to file: pip freeze > {{requirements.txt}}
pip install Install Python packages. More information: https://pip.pypa.io. Install a package: pip install {{package}} Install a specific version of a package: pip install {{package}}=={{version}} Install packages listed in a file: pip install --requirement {{path/to/requirements.txt}} Install packages from an URL or local file archive (.tar.gz | .whl): pip install --find-links {{url|path/to/file}} Install the local package in the current directory in develop (editable) mode: pip install --editable {{.}}
pip uninstall Uninstall Python packages. More information: https://pip.pypa.io. Uninstall a package: pip uninstall {{package}} Uninstall packages listed in a specific file: pip uninstall --requirement {{path/to/requirements.txt}} Uninstall package without asking for confirmation: pip uninstall --yes {{package}}
pip3 Python package manager. More information: https://pip.pypa.io. Install a package: pip3 install {{package}} Install a specific version of a package: pip3 install {{package}}=={{version}} Upgrade a package: pip3 install --upgrade {{package}} Uninstall a package: pip3 uninstall {{package}} Save the list of installed packages to a file: pip3 freeze > {{requirements.txt}} Install packages from a file: pip3 install --requirement {{requirements.txt}} Show installed package info: pip3 show {{package}}
pipenv Simple and unified Python development workflow. Manages packages and the virtual environment for a project. More information: https://pypi.org/project/pipenv. Create a new project: pipenv Create a new project using Python 3: pipenv --three Install a package: pipenv install {{package}} Install all the dependencies for a project: pipenv install Install all the dependencies for a project (including dev packages): pipenv install --dev Uninstall a package: pipenv uninstall {{package}} Start a shell within the created virtual environment: pipenv shell
pipx Install and run Python applications in isolated environments. More information: https://github.com/pypa/pipx. Run an app in a temporary virtual environment: pipx run {{pycowsay}} {{moo}} Install a package in a virtual environment and add entry points to path: pipx install {{package}} List installed packages: pipx list Run an app in a temporary virtual environment with a package name different from the executable: pipx run --spec {{httpx-cli}} {{httpx}} {{http://www.github.com}} Inject dependencies into an existing virtual environment: pipx inject {{package}} {{dependency1 dependency2 .
pixiecore Tool to manage the network booting of machines. More information: https://github.com/danderson/netboot/tree/master/pixiecore. Start a PXE boot server which provides a netboot.xyz boot image: pixiecore {{quick}} xyz --dhcp-no-bind Start a new PXE boot server which provides an Ubuntu boot image: pixiecore {{quick}} ubuntu --dhcp-no-bind Get a list of all available boot images for quick mode: pixiecore quick --help
pixterm Image printing in the terminal. See also: chafa, catimg. More information: https://github.com/eliukblau/pixterm. Render a static image directly in the terminal: pixterm {{path/to/file}} Use the image’s original aspect ratio: pixterm -s 2 {{path/to/file}} Specify a custom aspect ratio using a specific number of [t]erminal [r]ows and [c]olumns: pixterm -tr {{24}} -tc {{80}} {{path/to/file}} Filter the output with a [m]atte background color and character [d]ithering: pixterm -m {{000000}} -d 2 {{path/to/file}}
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
pkill Signal process by name. Mostly used for stopping processes. More information: https://www.man7.org/linux/man-pages/man1/pkill.1.html. Kill all processes which match: pkill "{{process_name}}" Kill all processes which match their full command instead of just the process name: pkill -f "{{command_name}}" Force kill matching processes (can’t be blocked): pkill -9 "{{process_name}}" Send SIGUSR1 signal to processes which match: pkill -USR1 "{{process_name}}" Kill the main firefox process to close the browser: pkill --oldest "{{firefox}}"
plantuml Create UML diagrams from a plain text language and render them in different formats. More information: https://plantuml.com/en/command-line. Render diagrams to default format (PNG): plantuml {{diagram1.puml}} {{diagram2.puml}} Render a diagram in given format (e.g. png, pdf, svg, txt): plantuml -t {{format}} {{diagram.puml}} Render all diagrams of a directory: plantuml {{path/to/diagrams}} Render a diagram to the output directory: plantuml -o {{path/to/output}} {{diagram.puml}} Render a diagram with the configuration file: plantuml -config {{config.
platformio This command is an alias of pio. More information: https://docs.platformio.org/en/latest/core/userguide/. View documentation for the original command: tldr pio
play Audio player of SoX - Sound eXchange. Plays any audio, with audio formats identified by the extension. More information: http://sox.sourceforge.net. Play the given audio file: play {{audiofile}} Play the given audio files: play {{audiofile1}} {{audiofile2}} Play the given audio at twice the speed: play {{audiofile}} speed 2.0 Play the given audio in reverse: play {{audiofile}} reverse
plenv Switch between multiple versions of Perl. More information: https://github.com/tokuhirom/plenv. Show the currently selected Perl version and how it was selected: plenv version List all available installed Perl versions: plenv versions Set the global Perl version (used unless a local or shell version takes priority): plenv global {{version}} Set the local application-specific Perl version (used in the current directory and all directories below it): plenv local {{version}} Set the shell-specific Perl version (used for the current session only): plenv shell {{version}}
plesk Plesk hosting control panel. More information: https://docs.plesk.com. Generate an auto login link for the admin user and print it: plesk login Show product version information: plesk version List all hosted domains: plesk bin domain --list Start watching for changes in the panel.log file: plesk log {{panel.log}} Start the interactive MySQL console: plesk db Open the Plesk main configuration file in the default editor: plesk conf {{panel.ini}}
plocate Find filenames quickly. Make sure to run sudo updatedb to include new files. More information: https://plocate.sesse.net. Look for patterns in the database (recomputed periodically): plocate {{pattern}} Look for a file by its exact filename (a pattern containing no globbing characters is interpreted as *pattern*): plocate */{{filename}}
pm2 Process manager for Node.js. Used for log management, monitoring and configuring processes. More information: https://pm2.keymetrics.io. Start a process with a name that can be used for later operations: pm2 start {{app.js}} --name {{application_name}} List processes: pm2 list Monitor all processes: pm2 monit Stop a process: pm2 stop {{application_name}} Restart a process: pm2 restart {{application_name}} Dump all processes for resurrecting them later: pm2 save Resurrect previously dumped processes: pm2 resurrect
pngcheck Print detailed information about and verify PNG, JNG, and MNG files. More information: http://www.libpng.org/pub/png/apps/pngcheck.html. Print a summary for an image (width, height, and color depth): pngcheck {{image.png}} Print information for an image with [c]olorized output: pngcheck -c {{image.png}} Print [v]erbose information for an image: pngcheck -cvt {{image.png}} Receive an image from stdin and display detailed information: cat {{path/to/image.png}} | pngcheck -cvt [s]earch for PNGs within a specific file and display information about them: pngcheck -s {{image.
pngcrush PNG compression utility. More information: https://pmt.sourceforge.io/pngcrush. Compress a PNG file: pngcrush {{in.png}} {{out.png}} Compress all PNGs and output them to the specified directory: pngcrush -d {{path/to/output}} *.png Compress PNG file with all 114 available algorithms and pick the best result: pngcrush -rem allb -brute -reduce {{in.png}} {{out.png}}
pngquant PNG converter and lossy image compressor. More information: https://pngquant.org/. Compress a specific PNG as much as possible and write result to a new file: pngquant {{path/to/file.png}} Compress a specific PNG and override original: pngquant --ext .png --force {{path/to/file.png}} Try to compress a specific PNG with custom quality (skip if below the min value): pngquant --quality {{0-100}} {{path/to/file.png}} Compress a specific PNG with the number of colors reduced to 64: pngquant {{64}} {{path/to/file.
pnpm Fast, disk space efficient package manager for Node.js. Manage Node.js projects and their module dependencies. More information: https://pnpm.io. Create a package.json file: pnpm init Download all the packages listed as dependencies in package.json: pnpm install Download a specific version of a package and add it to the list of dependencies in package.json: pnpm add {{module_name}}@{{version}} Download a package and add it to the list of [D]ev dependencies in package.json: pnpm add -D {{module_name}}
pnpx Directly execute binaries from npm packages, using pnpm instead of npm. More information: https://pnpm.io/pnpx-cli. Execute the binary from a given npm module: pnpx {{module_name}} Execute a specific binary from a given npm module, in case the module has multiple binaries: pnpx --package {{package_name}} {{module_name}} Display help: pnpx --help
podman Simple management tool for pods, containers and images. Podman provides a Docker-CLI comparable command-line. Simply put: alias docker=podman. More information: https://github.com/containers/podman/blob/main/commands-demo.md. List all containers (both running and stopped): podman ps --all Create a container from an image, with a custom name: podman run --name {{container_name}} {{image}} Start or stop an existing container: podman {{start|stop}} {{container_name}} Pull an image from a registry (defaults to Docker Hub): podman pull {{image}} Display the list of already downloaded images: podman images
podman build Daemonless tool for building container images. Podman provides a Docker-CLI comparable command-line. Simply put: alias docker=podman. More information: https://docs.podman.io/en/latest/markdown/podman-build.1.html. Create an image using a Dockerfile or Containerfile in the specified directory: podman build {{path/to/directory}} Create an image with a specified tag: podman build --tag {{image_name:version}} {{path/to/directory}} Create an image from a non-standard file: podman build --file {{Containerfile.different}} . Create an image without using any previously cached images: podman build --no-cache {{path/to/directory}}
podman-compose Run and manage Compose Specification container definition. More information: https://github.com/containers/podman-compose. List all running containers: podman-compose ps Create and start all containers in the background using a local docker-compose.yml: podman-compose up -d Start all containers, building if needed: podman-compose up --build Start all containers using an alternate compose file: podman-compose {{path/to/file}} up Stop all running containers: podman-compose stop Remove all containers, networks, and volumes: podman-compose down --volumes Follow logs for a container (omit all container names): podman-compose logs --follow {{container_name}}
podman image Manage Docker images. See also podman build, podman import, and podman pull. More information: https://docs.podman.io/en/latest/markdown/podman-image.1.html. List local Docker images: podman image ls Delete unused local Docker images: podman image prune Delete all unused images (not just those without a tag): podman image prune --all Show the history of a local Docker image: podman image history {{image}}
podman images Manage Podman images. More information: https://docs.podman.io/en/latest/markdown/podman-images.1.html. List all Podman images: podman images List all Podman images including intermediates: podman images --all List the output in quiet mode (only numeric IDs): podman images --quiet List all Podman images not used by any container: podman images --filter dangling=true List images that contain a substring in their name: podman images "{{*image|image*}}"
podman machine Create and manage virtual machines running Podman. Included with Podman version 4 or greater. More information: https://docs.podman.io/en/latest/markdown/podman-machine.1.html. List existing machines: podman machine ls Create a new default machine: podman machine init Create a new machine with a specific name: podman machine init {{name}} Create a new machine with different resources: podman machine init --cpus={{4}} --memory={{4096}} --disk-size={{50}} Start or stop a machine: podman machine {{start|stop}} {{name}} Connect to a running machine via SSH: podman machine ssh {{name}}
podman ps List Podman containers. More information: https://docs.podman.io/en/latest/markdown/podman-ps.1.html. List currently running podman containers: podman ps List all podman containers (running and stopped): podman ps --all Show the latest created container (includes all states): podman ps --latest Filter containers that contain a substring in their name: podman ps --filter "name={{name}}" Filter containers that share a given image as an ancestor: podman ps --filter "ancestor={{image}}:{{tag}}" Filter containers by exit status code: podman ps --all --filter "exited={{code}}"
podman rmi Remove one or more Podman images. More information: https://docs.podman.io/en/latest/markdown/podman-rmi.1.html. Remove one or more images given their names: podman rmi {{image:tag}} {{image2:tag}} {{...}} Force remove an image: podman rmi --force {{image}} Remove an image without deleting untagged parents: podman rmi --no-prune {{image}} Display help: podman rmi
podman run Run a command in a new Podman container. More information: https://docs.podman.io/en/latest/markdown/podman-run.1.html. Run command in a new container from a tagged image: podman run {{image:tag}} {{command}} Run command in a new container in background and display its ID: podman run --detach {{image:tag}} {{command}} Run command in a one-off container in interactive mode and pseudo-TTY: podman run --rm --interactive --tty {{image:tag}} {{command}} Run command in a new container with passed environment variables: podman run --env '{{variable}}={{value}}' --env {{variable}} {{image:tag}} {{command}}
poetry Manage Python packages and dependencies. More information: https://python-poetry.org/docs/cli/. Create a new Poetry project in the directory with a specific name: poetry new {{project_name}} Install a dependency and its subdependencies: poetry add {{dependency}} Install a development dependency and its subdependencies: poetry add --group dev {{dependency}} Interactively initialize the current directory as a new Poetry project: poetry init Get the latest version of all dependencies and update poetry.lock: poetry update Execute a command inside the project’s virtual environment: poetry run {{command}}
polybar A fast and easy-to-use status bar. More information: https://github.com/polybar/polybar/wiki. Start Polybar (the bar name is optional if only one bar is defined in the config): polybar {{bar_name}} Start Polybar with the specified config: polybar --config={{path/to/config.ini}} {{bar_name}} Start Polybar and reload the bar when the config file is modified: polybar --reload {{bar_name}}
polybar-msg Control polybar using inter-process-messaging (IPC). Note: IPC is disabled by default and can be enabled by setting enable-ipc = true in the Polybar config. More information: https://polybar.rtfd.io/en/stable/user/ipc.html. Quit the bar: polybar-msg cmd quit Restart the bar in-place: polybar-msg cmd restart Hide the bar (does nothing if the bar is already hidden): polybar-msg cmd hide Show the bar again (does nothing if the bar is not hidden): polybar-msg cmd show
pop Send emails from your terminal. More information: https://github.com/charmbracelet/pop. Launch the Text-based User Interface: pop Send an email using the content of a Markdown file as body: pop < {{path/to/message.md}} --from {{me@example.com}} --to {{you@example.com}} --subject "{{On the Subject of Ducks...}}" --attach {{path/to/attachment}} Display help and exit: pop --help
popd Remove a directory placed on the directory stack via the pushd shell built-in. See also pushd to place a directory on the stack and dirs to display directory stack contents. More information: https://www.gnu.org/software/bash/manual/html_node/Directory-Stack-Builtins.html. Remove the top directory from the stack and cd to it: popd Remove the Nth directory (starting from zero to the left from the list printed with dirs): popd +N Remove the Nth directory (starting from zero to the right from the list printed with dirs): popd -N
popeye Utility that reports potential issues with Kubernetes deployment manifests. More information: https://github.com/derailed/popeye. Scan the current Kubernetes cluster: popeye Scan a specific namespace: popeye -n {{namespace}} Scan specific Kubernetes context: popeye --context={{context}} Use a spinach configuration file for scanning: popeye -f {{spinach.yaml}}
postcss PostCSS is a tool for transforming styles with JS plugins. More information: https://postcss.org. Parse and transform a CSS file: postcss {{path/to/file}} Parse and transform a CSS file and output to a specific file: postcss {{path/to/file}} --output {{path/to/file}} Parse and transform a CSS file and output to a specific directory: postcss {{path/to/file}} --dir {{path/to/directory}} Parse and transform a CSS file in-place: postcss {{path/to/file}} --replace Specify a custom PostCSS parser: postcss {{path/to/file}} --parser {{parser}}
powershell Command-line shell and scripting language designed especially for system administration. See also: pwsh. More information: https://learn.microsoft.com/windows-server/administration/windows-commands/powershell. Start an interactive shell session: powershell Start an interactive shell session without loading startup configs: powershell -NoProfile Execute specific commands: powershell -Command "{{echo 'powershell is executed'}}" Execute a specific script: powershell -File {{path/to/script.ps1}} Start a session with a specific version of PowerShell: powershell -Version {{version}} Prevent a shell from exit after running startup commands: powershell -NoExit
pppd Establish Point-to-Point connection to another computer. It should not be invoked manually. More information: https://ppp.samba.org/pppd.html. Start the daemon: pppd
pprof Command-line tool for visualization and analysis of profile data. More information: https://github.com/google/pprof. Generate a text report from a specific profiling file, on fibbo binary: pprof -top {{./fibbo}} {{./fibbo-profile.pb.gz}} Generate a graph and open it on a web browser: pprof -svg {{./fibbo}} {{./fibbo-profile.pb.gz}} Run pprof in interactive mode to be able to manually launch pprof on a file: pprof {{./fibbo}} {{./fibbo-profile.pb.gz}} Run a web server that serves a web interface on top of pprof: pprof -http={{localhost:8080}} {{.
pr Paginate or columnate files for printing. More information: https://www.gnu.org/software/coreutils/pr. Print multiple files with a default header and footer: pr {{file1}} {{file2}} {{file3}} Print with a custom centered header: pr -h "{{header}}" {{file1}} {{file2}} {{file3}} Print with numbered lines and a custom date format: pr -n -D "{{format}}" {{file1}} {{file2}} {{file3}} Print all files together, one in each column, without a header or footer: pr -m -T {{file1}} {{file2}} {{file3}}
pre-commit Create Git hooks that get run before a commit. More information: https://pre-commit.com. Install pre-commit into your Git hooks: pre-commit install Run pre-commit hooks on all staged files: pre-commit run Run pre-commit hooks on all files, staged or unstaged: pre-commit run --all-files Clean pre-commit cache: pre-commit clean
prettier An opinionated code formatter for JavaScript, JSON, CSS, YAML, and more. More information: https://prettier.io/. Format a file and print the result to stdout: prettier {{path/to/file}} Check if a specific file has been formatted: prettier --check {{path/to/file}} Run with a specific configuration file: prettier --config {{path/to/config_file}} {{path/to/file}} Format a file or directory, replacing the original: prettier --write {{path/to/file_or_directory}} Format files or directories recursively using single quotes and no trailing commas: prettier --single-quote --trailing-comma {{none}} --write {{path/to/file_or_directory}}
pretty-bytes Convert bytes to a human-readable string. More information: https://github.com/sindresorhus/pretty-bytes-cli. Convert numeric bytes value to a human-readable string: pretty-bytes {{1337}} Convert numeric bytes value from stdin to a human-readable string: echo {{1337}} | pretty-bytes Display help and usage information: pretty-bytes --help
printenv Print values of all or specific environment variables. More information: https://www.gnu.org/software/coreutils/printenv. Display key-value pairs of all environment variables: printenv Display the value of a specific variable: printenv {{HOME}} Display the value of a variable and end with NUL instead of newline: printenv --null {{HOME}}
printf Format and print text. More information: https://www.gnu.org/software/coreutils/printf. Print a text message: printf "{%s\n}" "{{Hello world}}" Print an integer in bold blue: printf "{{\e[1;34m%.3d\e[0m\n}}" {{42}} Print a float number with the Unicode Euro sign: printf "{{\u20AC %.2f\n}}" {{123.4}} Print a text message composed with environment variables: printf "{{var1: %s\tvar2: %s\n}}" "{{$VAR1}}" "{{$VAR2}}" Store a formatted message in a variable (does not work on zsh): printf -v {{myvar}} {{"This is %s = %d\n" "a year" 2016}}
procs Display information about the active processes. More information: https://github.com/dalance/procs. List all processes showing the PID, user, CPU usage, memory usage, and the command which started them: procs List all processes as a tree: procs --tree List information about processes, if the commands which started them contain zsh: procs {{zsh}} List information about all processes sorted by CPU time in [a]scending or [d]escending order: procs {{--sorta|--sortd}} cpu List information about processes with either a PID, command, or user containing 41 or firefox: procs --or {{PID|command|user}} {{41}} {{firefox}}
progpilot A PHP static analysis tool for detecting security vulnerabilities. More information: https://github.com/designsecurity/progpilot. Analyze the current directory: progpilot Analyze a specific file or directory: progpilot {{path/to/file_or_directory}} Specify a custom configuration file: progpilot --configuration {{path/to/configuration.yml}}
progress Display/Monitor the progress of running coreutils. More information: https://github.com/Xfennec/progress. Show the progress of running coreutils: progress Show the progress of running coreutils in quiet mode: progress -q Launch and monitor a single long-running command: {{command}} & progress --monitor --pid $! Include an estimate of time remaining for completion: progress --wait --command {{firefox}}
Projucer A project manager for JUCE framework applications. More information: https://juce.com/discover/stories/projucer-manual#10.4-command-line-tools. Display information about a project: Projucer --status {{path/to/project_file}} Resave all files and resources in a project: Projucer --resave {{path/to/project_file}} Update the version number in a project: Projucer --set-version {{version_number}} {{path/to/project_file}} Generate a JUCE project from a PIP file: Projucer --create-project-from-pip {{path/to/PIP}} {{path/to/output}} Remove all JUCE-style comments (//=====, //----- or ///////): Projucer --tidy-divider-comments {{path/to/target_folder}} Display help: Projucer --help
promtool Tooling for the Prometheus monitoring system. More information: https://prometheus.io/docs/prometheus/latest/getting_started/. Check if the config files are valid or not (if present report errors): promtool check config {{config_file.yml}} Check if the rule files are valid or not (if present report errors): promtool check rules {{rules_file.yml}} Pass Prometheus metrics over stdin to check them for consistency and correctness: curl --silent {{http://example.com:9090/metrics/}} | promtool check metrics Unit tests for rules config: promtool test rules {{test_file.
prosodyctl The control tool for the Prosody XMPP server. More information: https://prosody.im/doc/prosodyctl. Show the status of the Prosody server: sudo prosodyctl status Reload the server’s configuration files: sudo prosodyctl reload Add a user to the Prosody XMPP server: sudo prosodyctl adduser {{user@example.com}} Set a user’s password: sudo prosodyctl passwd {{user@example.com}} Permanently delete a user: sudo prosodyctl deluser {{user@example.com}}
protector Protect or unprotect branches on GitHub repositories. More information: https://github.com/jcgay/protector. Protect branches of a GitHub repository (create branch protection rules): protector {{branches_regex}} -repos {{organization/repository}} Use the dry run to see what would be protected (can also be used for freeing): protector -dry-run {{branches_regex}} -repos {{organization/repository}} Free branches of a GitHub repository (delete branch protection rules): protector -free {{branches_regex}} -repos {{organization/repository}}
protoc Parse Google Protobuf .proto files and generate output in the specified language. More information: https://developers.google.com/protocol-buffers. Generate Python code from a .proto file: protoc --python_out={{path/to/output_directory}} {{input_file.proto}} Generate Java code from a .proto file that imports other .proto files: protoc --java_out={{path/to/output_directory}} --proto_path={{path/to/import_search_path}} {{input_file.proto}} Generate code for multiple languages: protoc --csharp_out={{path/to/c#_output_directory}} --js_out={{path/to/js_output_directory}} {{input_file.proto}}
prqlc PRQL compiler. PRQL is a modern language for transforming data - a simple, powerful, pipelined SQL replacement. More information: https://prql-lang.org. Run the compiler interactively: prqlc compile Compile a specific .prql file to stdout: prqlc compile {{path/to/file.prql}} Compile a .prql file to a .sql file: prqlc compile {{path/to/source.prql}} {{path/to/target.sql}} Compile a query: echo "{{from employees | filter has_dog | select salary}}" | prqlc compile Watch a directory and compile on file modification: prqlc watch {{path/to/directory}}
ps Information about running processes. More information: https://manned.org/ps. List all running processes: ps aux List all running processes including the full command string: ps auxww Search for a process that matches a string: ps aux | grep {{string}} List all processes of the current user in extra full format: ps --user $(id -u) -F List all processes of the current user as a tree: ps --user $(id -u) f Get the parent PID of a process: ps -o ppid= -p {{pid}}
psalm A static analysis tool for finding errors in PHP applications. More information: https://psalm.dev. Generate a Psalm configuration: psalm --init Analyze the current working directory: psalm Analyze a specific directory or file: psalm {{path/to/file_or_directory}} Analyze a project with a specific configuration file: psalm --config {{path/to/psalm.xml}} Include informational findings in the output: psalm --show-info Analyze a project and display statistics: psalm --stats Analyze a project in parallel with 4 threads: psalm --threads {{4}}
psgrep Search running processes with grep. More information: https://jvz.github.io/psgrep. Find process lines containing a specific string: psgrep {{process_name}} Find process lines containing a specific string, excluding headers: psgrep -n {{process_name}} Search using a simplified format (PID, user, command): psgrep -s {{process_name}}
psql PostgreSQL command-line client. More information: https://www.postgresql.org/docs/current/app-psql.html. Connect to the database. By default, it connects to the local socket using port 5432 with the currently logged in user: psql {{database}} Connect to the database on given server host running on given port with given username, without a password prompt: psql -h {{host}} -p {{port}} -U {{username}} {{database}} Connect to the database; user will be prompted for password: psql -h {{host}} -p {{port}} -U {{username}} -W {{database}}
pssh Parallel SSH program. More information: https://manned.org/pssh. Run a command on two hosts, and print its output on each server inline: pssh -i -H "{{host1}} {{host2}}" {{hostname -i}} Run a command and save the output to separate files: pssh -H {{host1}} -H {{host2}} -o {{path/to/output_dir}} {{hostname -i}} Run a command on multiple hosts, specified in a new-line separated file: pssh -i -h {{path/to/hosts_file}} {{hostname -i}} Run a command as root (this asks for the root password): pssh -i -h {{path/to/hosts_file}} -A -l {{root_username}} {{hostname -i}}
psysh A runtime developer console, interactive debugger and REPL for PHP. More information: https://psysh.org. Open a shell in the current directory: psysh Open a shell in a specific directory: psysh --cwd {{path/to/directory}} Use a specific configuration file: psysh --config {{path/to/file}}
pt Platinum Searcher. A code search tool similar to ag. More information: https://github.com/monochromegane/the_platinum_searcher. Find files containing “foo” and print the files with highlighted matches: pt {{foo}} Find files containing “foo” and display count of matches in each file: pt -c {{foo}} Find files containing “foo” as a whole word and ignore its case: pt -wi {{foo}} Find “foo” in files with a given extension using a regular expression: pt -G='{{\.bar$}}' {{foo}}
ptargrep Find regular expression patterns in one or more tar archive files. More information: https://manned.org/ptargrep. Search for a pattern within a tar file: ptargrep "{{search_pattern}}" {{path/to/file}} Search for a pattern within multiple files: ptargrep "{{search_pattern}}" {{path/to/file1}} {{path/to/file2}} {{path/to/file3}} Extract to the current directory using the basename of the file from the archive: ptargrep --basename "{{search_pattern}}" {{path/to/file}} Search for a case-insensitive pattern matching within a tar file: ptargrep --ignore-case "{{search_pattern}}" {{path/to/file}}
ptpython A better Python REPL. More information: https://github.com/prompt-toolkit/ptpython. Start a REPL (interactive shell): ptpython Execute a specific Python file: ptpython {{path/to/file.py}} Execute a specific Python file and start a REPL: ptpython -i {{path/to/file.py}} Open the menu: F2 Open the history page: F3 Toggle paste mode: F6 Quit: Ctrl + D
ptpython3 This command is an alias of ptpython. View documentation for the original command: tldr ptpython
pueue A task management tool for sequential and parallel execution of long-running tasks. Some subcommands such as pueue add have their own usage documentation. More information: https://github.com/Nukesor/pueue. Show general help and available subcommands: pueue --help Check the version of pueue: pueue --version Execute a pueue subcommand: pueue {{subcommand}}
pueue add Enqueue a task for execution. More information: https://github.com/Nukesor/pueue. Add any command to the default queue: pueue add {{command}} Pass a list of flags or arguments to a command when enqueuing: pueue add -- {{command --arg -f}} Add a command but do not start it if it’s the first in a queue: pueue add --stashed -- {{rsync --archive --compress /local/directory /remote/directory}} Add a command to a group and start it immediately, see pueue group to manage groups: pueue add --immediate --group "{{CPU_intensive}}" -- {{ffmpeg -i input.
pueue clean Remove all finished tasks from the list and clear logs. More information: https://github.com/Nukesor/pueue. Remove finished tasks and clear logs: pueue clean Only clean commands that finished successfully: pueue clean --successful-only
pueue completions Generates shell completion files for Bash, Elvish, Fish, PowerShell, and Zsh. More information: https://github.com/Nukesor/pueue. Generate completions for Bash: sudo pueue completions bash {{/usr/share/bash-completion/completions/pueue.bash}} Generate completions for zsh: sudo pueue completions zsh {{/usr/share/zsh/site-functions}} Generate completions for fish: sudo pueue completions fish {{/usr/share/fish/completions}}
pueue edit Edit the command or path of a stashed or queued task. More information: https://github.com/Nukesor/pueue. Edit a task, see pueue status to get the task ID: pueue edit {{task_id}} Edit the path from which a task is executed: pueue edit {{task_id}} --path Edit a command with the specified editor: EDITOR={{nano}} pueue edit {{task_id}}
pueue enqueue Enqueue stashed tasks. See also: pueue stash. More information: https://github.com/Nukesor/pueue. Enqueue multiple stashed tasks at once: pueue enqueue {{task_id}} {{task_id}} Enqueue a stashed task after 60 seconds: pueue enqueue --delay {{60}} {{task_id}} Enqueue a stashed task next Wednesday: pueue enqueue --delay {{wednesday}} {{task_id}} Enqueue a stashed task after four months: pueue enqueue --delay "4 months" {{task_id}} Enqueue a stashed task on 2021-02-19: pueue enqueue --delay {{2021-02-19}} {{task_id}} List all available date/time formats: pueue enqueue --help
pueue follow Follow the output of a currently running task. See also: pueue log. More information: https://github.com/Nukesor/pueue. Follow the output of a task (stdout + stderr): pueue follow {{task_id}} Follow stderr of a task: pueue follow --err {{task_id}}
pueue group Display, add or remove groups. More information: https://github.com/Nukesor/pueue. Show all groups with their statuses and number of parallel jobs: pueue group Add a custom group: pueue group --add "{{group_name}}" Remove a group and move its tasks to the default group: pueue group --remove "{{group_name}}"
pueue help Display help for subcommands. More information: https://github.com/Nukesor/pueue. Show all available subcommands and flags: pueue help Show help for a specific subcommand: pueue help {{subcommand}}
pueue kill Kill running tasks or whole groups. More information: https://github.com/Nukesor/pueue. Kill all tasks in the default group: pueue kill Kill a specific task: pueue kill {{task_id}} Kill a task and terminate all its child processes: pueue kill --children {{task_id}} Kill all tasks in a group and pause the group: pueue kill --group {{group_name}} Kill all tasks across all groups and pause all groups: pueue kill --all
pueue log Display the log output of 1 or more tasks. See also: pueue status. More information: https://github.com/Nukesor/pueue. Show the last few lines of output from all tasks: pueue log Show the full output of a task: pueue log {{task_id}} Show the last few lines of output from several tasks: pueue log {{task_id}} {{task_id}} Print a specific number of lines from the tail of output: pueue log --lines {{number_of_lines}} {{task_id}}
pueue parallel Set the amount of allowed parallel tasks. More information: https://github.com/Nukesor/pueue. Set the maximum number of tasks allowed to run in parallel, in the default group: pueue parallel {{max_number_of_parallel_tasks}} Set the maximum number of tasks allowed to run in parallel, in a specific group: pueue parallel --group {{group_name}} {{maximum_number_of_parallel_tasks}}
pueue pause Pause running tasks or groups. See also: pueue start. More information: https://github.com/Nukesor/pueue. Pause all tasks in the default group: pueue pause Pause a running task: pueue pause {{task_id}} Pause a running task and stop all its direct children: pueue pause --children {{task_id}} Pause all tasks in a group and prevent it from starting new tasks: pueue pause --group {{group_name}} Pause all tasks and prevent all groups from starting new tasks: pueue pause --all
pueue remove Remove tasks from the list. Running or paused tasks need to be killed first. More information: https://github.com/Nukesor/pueue. Remove a killed or finished task: pueue remove {{task_id}} Remove multiple tasks at once: pueue remove {{task_id}} {{task_id}}
pueue reset Kill everything and reset. More information: https://github.com/Nukesor/pueue. Kill all tasks and remove everything (logs, status, groups, task IDs): pueue reset Kill all tasks, terminate their children, and reset everything: pueue reset --children Reset without asking for confirmation: pueue reset --force
pueue restart Restart tasks. More information: https://github.com/Nukesor/pueue. Restart a specific task: pueue restart {{task_id}} Restart multiple tasks at once, and start them immediately (do not enqueue): pueue restart --start-immediately {{task_id}} {{task_id}} Restart a specific task from a different path: pueue restart --edit-path {{task_id}} Edit a command before restarting: pueue restart --edit {{task_id}} Restart a task in-place (without enqueuing as a separate task): pueue restart --in-place {{task_id}} Restart all failed tasks and stash them: pueue restart --all-failed --stashed
pueue send Send input to a task. More information: https://github.com/Nukesor/pueue. Send input to a running command: pueue send {{task_id}} "{{input}}" Send confirmation to a task expecting y/N (e.g. apt, cp): pueue send {{task_id}} {{y}}
pueue shutdown Remotely shut down the daemon. Only use this subcommand if the daemon isn’t started by a service manager. More information: https://github.com/Nukesor/pueue. Shutdown the daemon without a service manager: pueue shutdown
pueue start Resume operation of specific tasks or groups of tasks. See also: pueue pause. More information: https://github.com/Nukesor/pueue. Resume all tasks in the default group: pueue start Resume a specific task: pueue start {{task_id}} Resume multiple tasks at once: pueue start {{task_id}} {{task_id}} Resume all tasks and start their children: pueue start --all --children Resume all tasks in a specific group: pueue start group {{group_name}}
pueue stash Stash tasks to prevent them starting automatically. See also pueue start and pueue enqueue. More information: https://github.com/Nukesor/pueue. Stash an enqueued task: pueue stash {{task_id}} Stash multiple tasks at once: pueue stash {{task_id}} {{task_id}} Start a stashed task immediately: pueue start {{task_id}} Enqueue a task to be executed when preceding tasks finish: pueue enqueue {{task_id}}
pueue status Display the current status of all tasks. More information: https://github.com/Nukesor/pueue. Show the status of all tasks: pueue status Show the status of a specific group: pueue status --group {{group_name}}
pueue switch Switches the queue position of two enqueued or stashed commands. More information: https://github.com/Nukesor/pueue. Switch the priority of two tasks: pueue switch {{task_id1}} {{task_id2}}
pulumi Define infrastructure on any cloud using familiar programming languages. More information: https://www.pulumi.com/docs/reference/cli. Create a new project using a template: pulumi new Create a new stack using an isolated deployment target: pulumi stack init Configure variables (e.g. keys, regions, etc.) interactively: pulumi config Preview and deploy changes to a program and/or infrastructure: pulumi up Preview deployment changes without performing them (dry-run): pulumi preview Destroy a program and its infrastructure: pulumi destroy
pup Command-line HTML parsing tool. More information: https://github.com/ericchiang/pup. Transform a raw HTML file into a cleaned, indented, and colored format: cat {{index.html}} | pup --color Filter HTML by element tag name: cat {{index.html}} | pup '{{tag}}' Filter HTML by id: cat {{index.html}} | pup '{{div#id}}' Filter HTML by attribute value: cat {{index.html}} | pup '{{input[type="text"]}}' Print all text from the filtered HTML elements and their children: cat {{index.html}} | pup '{{div}} text{}'
puppet Help to manage and automate the configuration of servers. Some subcommands such as puppet agent have their own usage documentation. More information: https://puppet.com/. Execute a Puppet subcommand: puppet {{subcommand}} Check the Puppet version: puppet --version Display help: puppet --help Display help for a subcommand: puppet help {{subcommand}}
puppet agent Retrieves the client configuration from a Puppet server and applies it to the local host. More information: https://puppet.com/docs/puppet/7/man/agent.html. Register a node at a Puppet server and apply the received catalog: puppet agent --test --server {{puppetserver_fqdn}} --serverport {{port}} --waitforcert {{poll_time}} Run the agent in the background (uses settings from puppet.conf): puppet agent Run the agent once in the foreground, then exit: puppet agent --test Run the agent in dry-mode: puppet agent --test --noop
puppet apply Apply Puppet manifests locally. More information: https://puppet.com/docs/puppet/7/man/apply.html. Apply a manifest: puppet apply {{path/to/manifest}} Execute puppet code: puppet apply --execute {{code}} Use a specific module and hiera config file: puppet apply --modulepath {{path/to/directory}} --hiera_config {{path/to/file}} {{path/to/manifest}}
pushd Place a directory on a stack so it can be accessed later. See also popd to switch back to original directory and dirs to display directory stack contents. More information: https://www.gnu.org/software/bash/manual/html_node/Directory-Stack-Builtins.html. Switch to directory and push it on the stack: pushd {{path/to/directory}} Switch first and second directories on the stack: pushd Rotate stack by making the 5th element the top of the stack: pushd +4 Rotate the stack 4 times to the left (the current directory stays at the top by replacing the 5th element): pushd -n +4
pv Monitor the progress of data through a pipe. More information: https://manned.org/pv. Print the contents of the file and display a progress bar: pv {{path/to/file}} Measure the speed and amount of data flow between pipes (--size is optional): command1 | pv --size {{expected_amount_of_data_for_eta}} | command2 Filter a file, see both progress and amount of output data: pv -cN in {{big_text_file}} | grep {{pattern}} | pv -cN out > {{filtered_file}} Attach to an already running process and see its file reading progress: pv -d {{PID}}
pve-firewall Manage Proxmox VE Firewall. More information: https://pve.proxmox.com/wiki/Firewall. Compile and print all firewall rules: pve-firewall compile Show information about the local network: pve-firewall localnet Restart the Proxmox VE Firewall service: pve-firewall restart Start the Proxmox VE Firewall service: pve-firewall start Stop the Proxmox VE Firewall service: pve-firewall stop Simulate all firewall rules: pve-firewall simulate Show the status of Proxmox VE Firewall: pve-firewall status
pvecm Proxmox VE Cluster Manager. More information: https://pve.proxmox.com/pve-docs/pvecm.1.html. Add the current node to an existing cluster: pvecm add {{hostname_or_ip}} Add a node to the cluster configuration (internal use): pvecm addnode {{node}} Return the version of the cluster join API available on this node: pvecm apiver Generate new cluster configuration: pvecm create {{clustername}} Remove a node from the cluster configuration: pvecm delnode {{node}} Display the local view of the cluster nodes: pvecm nodes
pveperf A benchmarking tool in Proxmox Server. Gather CPU and hard disk performance data for the hard disk. More information: https://pve.proxmox.com/pve-docs/pveperf.1.html. Show CPU and hard disk performance data for the hard disk mounted at /: pveperf
pwd Print name of current/working directory. More information: https://www.gnu.org/software/coreutils/pwd. Print the current directory: pwd Print the current directory, and resolve all symlinks (i.e. show the “physical” path): pwd -P
pwgen Generate pronounceable passwords. More information: https://github.com/tytso/pwgen. Generate random password with s[y]mbols: pwgen -y {{length}} Generate secure, hard-to-memorize passwords: pwgen -s {{length}} Generate password with at least one capital letter in them: pwgen -c {{length}}
pwsh This command is an alias of powershell. View documentation for the original command: tldr powershell
py-spy A sampling profiler for Python programs. More information: https://github.com/benfred/py-spy. Show a live view of the functions that take the most execution time of a running process: py-spy top --pid {{pid}} Start a program and show a live view of the functions that take the most execution time: py-spy top -- python {{path/to/file.py}} Produce an SVG flame graph of the function call execution time: py-spy record -o {{path/to/profile.svg}} --pid {{pid}}
pyATS A vendor agnostic test automation framework by Cisco Systems, used for network and systems testing. More information: https://developer.cisco.com/pyats/. Run a pyATS subcommand: pyats {{subcommand}} Display version: pyats version check Display help: pyats --help Display help about a specific subcommand: pyats {{subcommand}} --help
pyats shell Start a pre-loaded pyATS interactive Python Shell to save time in prototyping. More information: https://pubhub.devnetcloud.com/media/genie-docs/docs/cli/genie_shell.html. Open pyATS shell with a defined Testbed file: pyats shell --testbed-file {{path/to/testbed.yaml}} Open pyATS shell with a defined Pickle file: pyats shell --pickle-file {{path/to/pickle.file}} Open pyATS with IPython disabled: pyats shell --no-ipython
pyats version View and upgrade the pyATS installation. More information: https://developer.cisco.com/pyats/. Display version of all packages: pyats version check Display outdated packages: pyats version check --outdated Update packages to the most recent version: pyats version update Update or downgrade packages to a specific version: pyats version update {{version}}
pycodestyle A tool to check Python code against PEP 8 style conventions. More information: https://pycodestyle.readthedocs.io. Check the style of a single file: pycodestyle {{file.py}} Check the style of multiple files: pycodestyle {{file1.py}} {{file2.py}} {{file3.py}} Show only the first occurrence of an error: pycodestyle --first {{file.py}} Show the source code for each error: pycodestyle --show-source {{file.py}} Show the specific PEP 8 text for each error: pycodestyle --show-pep8 {{file.py}}
pydoc Display offline Python documentation. More information: https://docs.python.org/3/library/pydoc.html. Print documentation on a subject (Python keyword, topic, function, module, package, etc.): pydoc {{subject}} Start an HTTP server on an arbitrary unused port and open a [b]rowser to see the documentation: pydoc -b Display help: pydoc
pyenv Switch between multiple versions of Python easily. More information: https://github.com/pyenv/pyenv. List all available commands: pyenv commands List all Python versions under the ${PYENV_ROOT}/versions directory: pyenv versions List all Python versions that can be installed from upstream: pyenv install --list Install a Python version under the ${PYENV_ROOT}/versions directory: pyenv install {{2.7.10}} Uninstall a Python version under the ${PYENV_ROOT}/versions directory: pyenv uninstall {{2.7.10}} Set Python version to be used globally in the current machine: pyenv global {{2.
pyenv virtualenv Create virtual environments based on one’s installed Python distributions. More information: https://github.com/pyenv/pyenv-virtualenv. Create a new Python 3.6.6 virtual environment: pyenv virtualenv {{3.6.6}} {{virtualenv_name}} List all existing virtual environments: pyenv virtualenvs Activate a virtual environment: pyenv activate {{virtualenv_name}} Deactivate the virtual environment: pyenv deactivate
pyflakes Checks Python source code files for errors. More information: https://pypi.org/project/pyflakes. Check a single Python file: pyflakes check {{path/to/file}}.py Check Python files in a specific directory: pyflakes checkPath {{path/to/directory}} Check Python files in a directory recursively: pyflakes checkRecursive {{path/to/directory}} Check all Python files found in multiple directories: pyflakes iterSourceCode {{path/to/directory_1}} {{path/to/directory_2}}
pygmentize Python-based syntax highlighter. More information: https://pygments.org/docs/cmdline/. Highlight file syntax and print to stdout (language is inferred from the file extension): pygmentize {{file.py}} Explicitly set the language for syntax highlighting: pygmentize -l {{javascript}} {{input_file}} List available lexers (processors for input languages): pygmentize -L lexers Save output to a file in HTML format: pygmentize -f html -o {{output_file.html}} {{input_file.py}} List available output formats: pygmentize -L formatters Output an HTML file, with additional formatter options (full page, with line numbers): pygmentize -f html -O "full,linenos=True" -o {{output_file.
pyinfra Automates infrastructure at a large scale. More information: https://docs.pyinfra.com. Execute a command over SSH: pyinfra {{target_ip_address}} exec -- {{command_name_and_arguments}} Execute contents of a deploy file on a list of targets: pyinfra {{path/to/target_list.py}} {{path/to/deploy.py}} Execute commands on locally: pyinfra @local {{path/to/deploy.py}} Execute commands over Docker: pyinfra @docker/{{container}} {{path/to/deploy.py}}
pylint A Python code linter. More information: https://pylint.pycqa.org/en/latest/. Show lint errors in a file: pylint {{path/to/file.py}} Lint a file and use a configuration file (usually named pylintrc): pylint --rcfile {{path/to/pylintrc}} {{path/to/file.py}} Lint a file and disable a specific error code: pylint --disable {{C,W,no-error,design}} {{path/to/file}}
pypy Fast and compliant alternative implementation of the Python language. More information: https://doc.pypy.org. Start a REPL (interactive shell): pypy Execute script in a given Python file: pypy {{path/to/file.py}} Execute script as part of an interactive shell: pypy -i {{path/to/file.py}} Execute a Python expression: pypy -c "{{expression}}" Run library module as a script (terminates option list): pypy -m {{module}} {{arguments}} Install a package using pip: pypy -m pip install {{package}} Interactively debug a Python script: pypy -m pdb {{path/to/file.
pystun3 Classic STUN client written in Python. More information: https://github.com/talkiq/pystun3. Make a STUN request: pystun3 Make a STUN request and specify the stun server: pystun3 --stun-host {{stun.1und1.de}} Make a STUN request and specify the source port: pystun3 --source-port {{7932}}
pytest Run Python tests. More information: https://docs.pytest.org/. Run tests from specific files: pytest {{path/to/test_file1.py path/to/test_file2.py ...}} Run tests with names matching a specific [k]eyword expression: pytest -k {{expression}} Exit as soon as a test fails or encounters an error: pytest --exitfirst Run tests matching or excluding markers: pytest -m {{marker_name1 and not marker_name2}} Run until a test failure, continuing from the last failing test: pytest --stepwise Run tests without capturing output: pytest --capture=no
python Python language interpreter. More information: https://www.python.org. Start a REPL (interactive shell): python Execute a specific Python file: python {{path/to/file.py}} Execute a specific Python file and start a REPL: python -i {{path/to/file.py}} Execute a Python expression: python -c "{{expression}}" Run the script of the specified library module: python -m {{module}} {{arguments}} Install a package using pip: python -m pip install {{package}} Interactively debug a Python script: python -m {{pdb}} {{path/to/file.py}}
python3 This command is an alias of python. View documentation for the original command: tldr python
q Execute SQL-like queries on .csv and .tsv files. More information: https://harelba.github.io/q. Query .csv file by specifying the delimiter as ‘,’: q -d',' "SELECT * from {{path/to/file}}" Query .tsv file: q -t "SELECT * from {{path/to/file}}" Query file with header row: q -d{{delimiter}} -H "SELECT * from {{path/to/file}}" Read data from stdin; ‘-’ in the query represents the data from stdin: {{output}} | q "select * from -" Join two files (aliased as f1 and f2 in the example) on column c1, a common column: q "SELECT * FROM {{path/to/file}} f1 JOIN {{path/to/other_file}} f2 ON (f1.
qcp Copy files using the default text editor to define the filenames. More information: https://www.nongnu.org/renameutils/. Copy a single file (open an editor with the source filename on the left and the target filename on the right): qcp {{source_file}} Copy multiple JPG files: qcp {{*.jpg}} Copy files, but swap the positions of the source and the target filenames in the editor: qcp --option swap {{*.jpg}}
qdbus Inter-Process Communication (IPC) and Remote Procedure Calling (RPC) mechanism originally developed for Linux. More information: https://doc.qt.io/qt-5/qtdbus-index.html. List available service names: qdbus List object paths for a specific service: qdbus {{service_name}} List methods, signals and properties available on a specific object: qdbus {{service_name}} {{/path/to/object}} Execute a specific method passing arguments and display the returned value: qdbus {{service_name}} {{/path/to/object}} {{method_name}} {{argument1}} {{argument2}} Display the current brightness value in a KDE Plasma session: qdbus {{org.
qemu Generic machine emulator and virtualizer. Supports a large variety of CPU architectures. More information: https://www.qemu.org. Boot from image emulating i386 architecture: qemu-system-i386 -hda {{image_name.img}} Boot from image emulating x64 architecture: qemu-system-x86_64 -hda {{image_name.img}} Boot QEMU instance with a live ISO image: qemu-system-i386 -hda {{image_name.img}} -cdrom {{os_image.iso}} -boot d Specify amount of RAM for instance: qemu-system-i386 -m 256 -hda image_name.img -cdrom os-image.iso -boot d Boot from physical device (e.g. from USB to test bootable medium): qemu-system-i386 -hda /dev/{{storage_device}}
qemu-img Tool for Quick Emulator Virtual HDD image creation and manipulation. More information: https://qemu.readthedocs.io/en/latest/tools/qemu-img.html. Create disk image with a specific size (in gigabytes): qemu-img create {{image_name.img}} {{gigabytes}}G Show information about a disk image: qemu-img info {{image_name.img}} Increase or decrease image size: qemu-img resize {{image_name.img}} {{gigabytes}}G Dump the allocation state of every sector of the specified disk image: qemu-img map {{image_name.img}} Convert a VMware .vmdk disk image to a KVM .qcow2 disk image: qemu-img convert -f {{vmdk}} -O {{qcow2}} {{path/to/file/foo.
qm nbdstop Stop embedded nbd server. More information: https://pve.proxmox.com/pve-docs/qm.1.html. Stop embedded nbd server: qm nbdstop {{VM_ID}}
qm stop Stop a virtual machine. More information: https://pve.proxmox.com/pve-docs/qm.1.html. Stop a virtual machine immediately: qm stop {{VM_ID}} Stop a virtual machine and wait for at most 10 seconds: qm stop --timeout {{10}} {{VM_ID}} Stop a virtual machine and skip lock (only root can use this option): qm stop --skiplock {{true}} {{VM_ID}} Stop a virtual machine and don’t deactivate storage volumes: qm stop --keepActive {{true}} {{VM_ID}}
qmmp An audio player. More information: http://qmmp.ylsoftware.com. Launch qmmp: qmmp Start or stop the currently playing audio: qmmp --play-pause Seek forwards or backward a specific amount of time in seconds: qmmp --seek-{{fwd|bwd}} {{time_in_seconds}} Play the next audio file: qmmp --next Play the previous audio file: qmmp --previous Print the current volume: qmmp --volume-status Increase or decrease the volume of the currently playing audio by 5 steps: qmmp --volume-{{inc|dec}}
qmv Move files and directories using the default text editor to define the filenames. More information: https://www.nongnu.org/renameutils/. Move a single file (open an editor with the source filename on the left and the target filename on the right): qmv {{source_file}} Move multiple JPG files: qmv {{*.jpg}} Move multiple directories: qmv -d {{path/to/directory1}} {{path/to/directory2}} {{path/to/directory3}} Move all files and directories inside a directory: qmv --recursive {{path/to/directory}} Move files, but swap the positions of the source and the target filenames in the editor: qmv --option swap {{*.
qpdf Versatile PDF transformation software. More information: https://github.com/qpdf/qpdf. Extract pages 1-3, 5 and 6-10 from a PDF file and save them as another one: qpdf --empty --pages {{input.pdf}} {{1-3,5,6-10}} -- {{output.pdf}} Merge (concatenate) all the pages of a list of PDF files and save the result as a new PDF: qpdf --empty --pages {{file1.pdf}} {{file2.pdf}} {{file3.pdf}} -- {{output.pdf}} Merge (concatenate) given pages from a list of PDF files and save the result as a new PDF: qpdf --empty --pages {{file1.
qr Generate QR codes in the terminal with ANSI VT-100 escape codes. More information: https://github.com/lincolnloop/python-qrcode/. Generate a QR code: echo "{{data}}" | qr Specify the error correction level (defaults to M): echo "{{data}}" | qr --error-correction={{L|M|Q|H}}
qrencode QR Code generator. Supports PNG and EPS. More information: https://fukuchi.org/works/qrencode. Convert a string to a QR code and save to an output file: qrencode -o {{path/to/output_file.png}} {{string}} Convert an input file to a QR code and save to an output file: qrencode -o {{path/to/output_file.png}} -r {{path/to/input_file}} Convert a string to a QR code and print it in terminal: qrencode -t ansiutf8 {{string}} Convert input from pipe to a QR code and print it in terminal: echo {{string}} | qrencode -t ansiutf8
qtcreator Cross-platform IDE for Qt applications. More information: https://doc.qt.io/qtcreator/creator-cli.html. Start Qt Creator: qtcreator Start Qt Creator and restore the last session: qtcreator -lastsession Start Qt Creator but don’t load the specified plugin: qtcreator -noload {{plugin}} Start Qt Creator but don’t load any plugins: qtcreator -noload {{all}} Start Qt Creator in presentation mode with pop-ups for keyboard shortcuts: qtcreator -presentationMode Start Qt Creator and show the diff from a specific commit: qtcreator -git-show {{commit}}
quarto An open-source scientific and technical publishing system built on Pandoc. More information: https://quarto.org/. Create a new project: quarto create-project {{path/to/destination_directory}} --type {{book|default|website}} Create a new blog website: quarto create-project {{path/to/destination_directory}} --type {{website}} --template {{blog}} Render input file(s) to different formats: quarto render {{path/to/file.{{qmd|rmd|ipynb}}}} --to {{html|pdf|docx}} Render and preview a document or a website: quarto preview {{path/to/destination_directory|path/to/file}} Publish a document or project to Quarto Pub, Github Pages, RStudio Connect or Netlify: quarto publish {{quarto-pub|gh-pages|connect|netlify}}
quilt Tool to manage a series of patches. More information: https://savannah.nongnu.org/projects/quilt. Import an existing patch from a file: quilt import {{path/to/filename.patch}} Create a new patch: quilt new {{filename.patch}} Add a file to the current patch: quilt add {{path/to/file}} After editing the file, refresh the current patch with the changes: quilt refresh Apply all the patches in the series file: quilt push -a Remove all applied patches: quilt pop -a
quota Display users’ disk space usage and allocated limits. More information: https://manned.org/quota. Show disk quotas in human-readable units for the current user: quota -s Verbose output (also display quotas on filesystems where no storage is allocated): quota -v Quiet output (only display quotas on filesystems where usage is over quota): quota -q Print quotas for the groups of which the current user is a member: quota -g Show disk quotas for another user: sudo quota -u {{username}}
qutebrowser A keyboard-driven, vim-like browser based on PyQt5. More information: https://qutebrowser.org/. Open qutebrowser with a specified storage directory: qutebrowser --basedir {{path/to/directory}} Open a qutebrowser instance with temporary settings: qutebrowser --set {{content.geolocation}} {{true|false}} Restore a named session of a qutebrowser instance: qutebrowser --restore {{session_name}} Launch qutebrowser, opening all URLs using the specified method: qutebrowser --target {{auto|tab|tab-bg|tab-silent|tab-bg-silent|window|private-window}} Open qutebrowser with a temporary base directory and print logs to stdout as JSON: qutebrowser --temp-basedir --json-logging
R R language interpreter. More information: https://www.r-project.org. Start a REPL (interactive shell): R Check R version: R --version Start R in vanilla mode (i.e. a blank session that doesn’t save the workspace at the end): R --vanilla Execute a file: R -f {{path/to/file.R}} Execute an R expression and then exit: R -e {{expr}} Run R with a debugger: R -d {{debugger}} Check R packages from package sources: R CMD check {{path/to/package_source}}
r2 This command is an alias of radare2. View documentation for the original command: tldr radare2
r2e Forwards RSS feeds to an email address. Requires a configured sendmail or smtp setup. More information: https://github.com/rss2email/rss2email. Create a new feed database that sends email to an email address: r2e new {{email_address}} Subscribe to a feed: r2e add {{feed_name}} {{feed_URI}} Send new stories to an email address: r2e run List all feeds: r2e list Delete a feed at a specified index: r2e delete {{index}}
rabin2 Get information about binary files (ELF, PE, Java CLASS, Mach-O) - symbols, sections, linked libraries, etc. Comes bundled with radare2. More information: https://manned.org/rabin2. Display general information about a binary (architecture, type, endianness): rabin2 -I {{path/to/binary}} Display linked libraries: rabin2 -l {{path/to/binary}} Display symbols imported from libraries: rabin2 -i {{path/to/binary}} Display strings contained in the binary: rabin2 -z {{path/to/binary}} Display the output in JSON: rabin2 -j -I {{path/to/binary}}
racket Racket language interpreter. More information: https://racket-lang.org. Start a REPL (interactive shell): racket Execute a Racket script: racket {{path/to/script.rkt}} Execute a Racket expression: racket --eval "{{expression}}" Run module as a script (terminates option list): racket --lib {{module_name}} --main {{arguments}} Start a REPL (interactive shell) for the typed/racket hashlang: racket -I typed/racket
raco Racket command-line tools. More information: https://docs.racket-lang.org/raco/. Install a package, automatically installing dependencies: raco pkg install --auto {{package_source}} Install the current directory as a package: raco pkg install Build (or rebuild) bytecode, documentation, executables, and metadata indexes for collections: raco setup {{collection1 collection2 ...}} Run tests in files: raco test {{path/to/tests1.rkt path/to/tests2.rkt ...}} Search local documentation: raco docs {{search_terms ...}} Display help: raco help
radare2 A set of reverse engineering tools. More information: https://radare.gitbooks.io/radare2book/. Open a file in write mode without parsing the file format headers: radare2 -nw {{path/to/binary}} Debug a program: radare2 -d {{path/to/binary}} Run a script before entering the interactive CLI: radare2 -i {{path/to/script.r2}} {{path/to/binary}} Show help text for any command in the interactive CLI: > {{radare2_command}}? Run a shell command from the interactive CLI: > !{{shell_command}} Dump raw bytes of current block to a file: > pr > {{path/to/file.
rails A server-side MVC framework written in Ruby. Some subcommands such as rails generate have their own usage documentation. More information: https://guides.rubyonrails.org/command_line.html. Create a new rails project: rails new "{{project_name}}" Start local server for current project on port 3000: rails server Start local server for current project on a specified port: rails server -p "{{port}}" Open console to interact with application from command-line: rails console Check current version of rails: rails --version
rails db Various database-related subcommands for Ruby on Rails. More information: https://guides.rubyonrails.org/command_line.html. Create databases, load the schema, and initialize with seed data: rails db:setup Access the database console: rails db Create the databases defined in the current environment: rails db:create Destroy the databases defined in the current environment: rails db:drop Run pending migrations: rails db:migrate View the status of each migration file: rails db:migrate:status Rollback the last migration: rails db:rollback
rails destroy Destroy Rails resources. More information: https://guides.rubyonrails.org/command_line.html#bin-rails-destroy. List all available generators to destroy: rails destroy Destroy a model named Post: rails destroy model {{Post}} Destroy a controller named Posts: rails destroy controller {{Posts}} Destroy a migration that creates Posts: rails destroy migration {{CreatePosts}} Destroy a scaffold for a model named Post: rails destroy scaffold {{Post}}
rails generate Generate new Rails templates in an existing project. More information: https://guides.rubyonrails.org/command_line.html#bin-rails-generate. List all available generators: rails generate Generate a new model named Post with attributes title and body: rails generate model {{Post}} {{title:string}} {{body:text}} Generate a new controller named Posts with actions index, show, new and create: rails generate controller {{Posts}} {{index}} {{show}} {{new}} {{create}} Generate a new migration that adds a category attribute to an existing model called Post: rails generate migration {{AddCategoryToPost}} {{category:string}}
rails routes List routes in a Rails application. More information: https://guides.rubyonrails.org/routing.html. List all routes: rails routes List all routes in an expanded format: rails routes --expanded List routes partially matching URL helper method name, HTTP verb, or URL path: rails routes -g {{posts_path|GET|/posts}} List routes that map to a specified controller: rails routes -c {{posts|Posts|Blogs::PostsController}}
railway Connect code to a Railway project. More information: https://railway.app/. Login to a Railway account: railway login Link to an existing Project under a Railway account or team: railway link {{projectId}} Create a new project: railway init Run a local command using variables from the active environment: railway run {{cmd}} Deploy the linked project directory (if running from a subdirectory, the project root is still deployed): railway up Open an interactive shell to a database: railway connect
rainbowstream Terminal-based Twitter client supporting realtime tweetstream, trends, sending, search, favorites and user management. Online help with h, up and down arrows for history, tab to auto-complete and 2-tab for suggestion. More information: https://github.com/orakaro/rainbowstream. Open RainbowStream: rainbowstream Show your timeline (optional number of tweets to display, default is 5): home [{{num_of_last_tweets}}] Show profile of a given user: whois @{{user}} Tweet the message as-is: t {{message}} Retweet the tweet with given ID (ID is beside the time): rt {{tweet_id}}
rake A Make-like program for Ruby. Tasks for rake are specified in a Rakefile. More information: https://ruby.github.io/rake. Run the default Rakefile task: rake Run a specific task: rake {{task}} Execute n jobs at a time in parallel (number of CPU cores + 4 by default): rake --jobs {{n}} Use a specific Rakefile: rake --rakefile {{path/to/Rakefile}} Execute rake from another directory: rake --directory {{path/to/directory}}
ranger Console file manager with VI key bindings. More information: https://github.com/ranger/ranger. Launch ranger: ranger Show only directories: ranger --show-only-dirs Change the configuration directory: ranger --confdir={{path/to/directory}} Change the data directory: ranger --datadir={{path/to/directory}} Print CPU usage statistics on exit: ranger --profile
rapper The Raptor RDF parsing utility. Part of the Raptor RDF Syntax Library. More information: http://librdf.org/raptor/rapper.html. Convert an RDF/XML document to Turtle: rapper -i rdfxml -o turtle {{path/to/file}} Count the number of triples in a Turtle file: rapper -i turtle -c {{path/to/file}}
rar The RAR archiver. Supports multi-volume archives that can be optionally self-extracting. More information: https://manned.org/rar. Archive 1 or more files: rar a {{path/to/archive_name.rar}} {{path/to/file1}} {{path/to/file2}} {{path/to/file3}} Archive a directory: rar a {{path/to/archive_name.rar}} {{path/to/directory}} Split the archive into parts of equal size (50M): rar a -v{{50M}} -R {{path/to/archive_name.rar}} {{path/to/file_or_directory}} Password protect the resulting archive: rar a -p{{password}} {{path/to/archive_name.rar}} {{path/to/file_or_directory}} Encrypt file data and headers with password: rar a -hp{{password}} {{path/to/archive_name.rar}} {{path/to/file_or_directory}}
rarcrack Password cracker for rar, zip and 7z archives. Brute force the password for an archive (tries to guess the archive type): rarcrack {{path/to/file.zip}} Specify the archive type: rarcrack --type {{rar|zip|7z}} {{path/to/file.zip}} Use multiple threads: rarcrack --threads {{6}} {{path/to/file.zip}}
rbac-lookup Find roles and cluster roles attached to any user, service account or group name in your Kubernetes cluster. More information: https://github.com/reactiveops/rbac-lookup. View all RBAC bindings: rbac-lookup View RBAC bindings that match a given expression: rbac-lookup {{search_term}} View all RBAC bindings along with the source role binding: rbac-lookup -o wide View all RBAC bindings filtered by subject: rbac-lookup -k {{user|group|serviceaccount}} View all RBAC bindings along with IAM roles (if you are using GKE): rbac-lookup --gke
rbash Restricted Bash shell, equivalent to bash --restricted. Does not permit changing the working directory, redirecting command output, or modifying environment variables, among other things. See also histexpand for history expansion. More information: https://www.gnu.org/software/bash/manual/html_node/The-Restricted-Shell. Start an interactive shell session: rbash Execute a command and then exit: rbash -c "{{command}}" Execute a script: rbash {{path/to/script.sh}} Execute a script, printing each command before executing it: rbash -x {{path/to/script.sh}} Execute commands from a script, stopping at the first error: rbash -e {{path/to/script.
rbenv A tool to easily install Ruby versions and manage application environments. More information: https://github.com/rbenv/rbenv. Install a Ruby version: rbenv install {{version}} Display a list of the latest stable versions for each Ruby: rbenv install --list Display a list of installed Ruby versions: rbenv versions Use a specific Ruby version across the whole system: rbenv global {{version}} Use a specific Ruby version for an application/project directory: rbenv local {{version}} Display the currently selected Ruby version: rbenv version
rbt RBTools is a set of command-line tools for working with Review Board and RBCommons. More information: https://www.reviewboard.org/docs/rbtools/dev/. Post changes to Review Board: rbt post {{change_number}} Display the diff that will be sent to Review Board: rbt diff Land a change in a local branch or on a review request: rbt land {{branch_name}} Patch your tree with a change on a review request: rbt patch {{review_request_id}} Set up RBTool to talk to a repository: rbt setup-repo
rc A modern simplistic port listener & reverse shell. Similar to nc. More information: https://github.com/robiot/rustcat/wiki/Basic-Usage. Start listening on a specific port: rc -lp {{port}} Start a reverse shell: rc {{host}} {{port}} -r {{shell}}
rcat This command is an alias of rc. View documentation for the original command: tldr rc
rclone Copy, synchronize or move files and directories to and from many cloud services. More information: https://rclone.org. List contents of a directory on an rclone remote: rclone lsf {{remote_name}}:{{path/to/directory}} Copy file or directory from local source to remote destination: rclone copy {{path/to/source_file_or_directory}} {{remote_name}}:{{path/to/destination_directory}} Copy file or directory from remote source to local destination: rclone copy {{remote_name}}:{{path/to/source_file_or_directory}} {{path/to/destination_directory}} Sync local source to remote destination, changing the destination only: rclone sync {{path/to/file_or_directory}} {{remote_name}}:{{path/to/directory}}
rdfind Find files with duplicate content and get rid of them. More information: https://rdfind.pauldreik.se. Identify all duplicates in a given directory and output a summary: rdfind -dryrun true {{path/to/directory}} Replace all duplicates with hardlinks: rdfind -makehardlinks true {{path/to/directory}} Replace all duplicates with symlinks/soft links: rdfind -makesymlinks true {{path/to/directory}} Delete all duplicates and do not ignore empty files: rdfind -deleteduplicates true -ignoreempty false {{path/to/directory}}
react-native A framework for building native apps with React. More information: https://reactnative.dev. Initialize a new React Native project in a directory of the same name: react-native init {{project_name}} Start the metro bundler: react-native start Start the metro bundler with a clean cache: react-native start --reset-cache Build the current application and start it on a connected Android device or emulator: react-native run-android Build the current application and start it on an iOS simulator: react-native run-ios
react-native start Command-line tools to start the React Native server. More information: https://github.com/react-native-community/cli/blob/master/docs/commands.md#start. Start the server that communicates with connected devices: react-native start Start the metro bundler with a clean cache: react-native start --reset-cache Start the server in a custom port (defaults to 8081): react-native start --port {{3000}} Start the server in verbose mode: react-native start --verbose Specify the maximum number of workers for transforming files (default is the number of CPU cores): react-native start --max-workers {{count}}
read Shell builtin for retrieving data from stdin. More information: https://manned.org/read.1p. Store data that you type from the keyboard: read {{variable}} Do not let backslash (\) act as an escape character: read -r {{variable}} Read stdin and perform an action on every line: while read line; do echo "$line"; done
readlink Follow symlinks and get symlink information. More information: https://www.gnu.org/software/coreutils/readlink. Get the actual file to which the symlink points: readlink {{path/to/file}} Get the absolute path to a file: readlink -f {{path/to/file}}
realpath Display the resolved absolute path for a file or directory. More information: https://www.gnu.org/software/coreutils/realpath. Display the absolute path for a file or directory: realpath {{path/to/file_or_directory}} Require all path components to exist: realpath --canonicalize-existing {{path/to/file_or_directory}} Resolve “..” components before symlinks: realpath --logical {{path/to/file_or_directory}} Disable symlink expansion: realpath --no-symlinks {{path/to/file_or_directory}} Suppress error messages: realpath --quiet {{path/to/file_or_directory}}
recsel Print records from a recfile: a human-editable, plain text database. More information: https://www.gnu.org/software/recutils/manual/recutils.html. Extract name and version field: recsel -p name,version {{data.rec}} Use “~” to match a string with a given regular expression: recsel -e "{{field_name}} ~ '{{regular_expression}}' {{data.rec}}" Use a predicate to match a name and a version: recsel -e "name ~ '{{regular_expression}}' && version ~ '{{regular_expression}}'" {{data.rec}}
rector An automated tool for updating and refactoring PHP 5.3+ code. More information: https://github.com/rectorphp/rector. Process a specific directory: rector process {{path/to/directory}} Process a directory without applying changes (dry run): rector process {{path/to/directory}} --dry-run Process a directory and apply coding standards: rector process {{path/to/directory}} --with-style Display a list of available levels: rector levels Process a directory with a specific level: rector process {{path/to/directory}} --level {{level_name}}
redis-benchmark A tool to benchmark a Redis server. More information: https://redis.io/docs/reference/optimization/benchmarks/. Run full benchmark: redis-benchmark Run benchmark on a specific Redis server: redis-benchmark -h {{host}} -p {{port}} -a {{password}} Run a subset of tests with default 100000 requests: redis-benchmark -h {{host}} -p {{port}} -t {{set,lpush}} -n {{100000}} Run with a specific script: redis-benchmark -n {{100000}} script load "{{redis.call('set', 'foo', 'bar')}}" Run benchmark by using 100000 [r]andom keys: redis-benchmark -t {{set}} -r {{100000}}
redis-cli Opens a connection to a Redis server. More information: https://redis.io/topics/rediscli. Connect to the local server: redis-cli Connect to a remote server on the default port (6379): redis-cli -h {{host}} Connect to a remote server specifying a port number: redis-cli -h {{host}} -p {{port}} Connect to a remote server specifying a URI: redis-cli -u {{uri}} Specify a password: redis-cli -a {{password}} Execute Redis command: redis-cli {{redis_command}} Connect to the local cluster: redis-cli -c
redis-server Persistent key-value database. More information: https://redis.io. Start Redis server, using the default port (6379), and write logs to stdout: redis-server Start Redis server, using the default port, as a background process: redis-server --daemonize yes Start Redis server, using the specified port, as a background process: redis-server --port {{port}} --daemonize yes Start Redis server with a custom configuration file: redis-server {{path/to/redis.conf}} Start Redis server with verbose logging: redis-server --loglevel {{warning|notice|verbose|debug}}
redshift Adjust the color temperature of your screen according to your surroundings. More information: http://jonls.dk/redshift. Turn on Redshift with 5700K temperature during day and 3600K at night: redshift -t {{5700}}:{{3600}} Turn on Redshift with a manually specified custom location: redshift -l {{latitude}}:{{longitude}} Turn on Redshift with 70% screen brightness during day and 40% brightness at night: redshift -b {{0.7}}:{{0.4}} Turn on Redshift with custom gamma levels (between 0 and 1): redshift -g {{red}}:{{green}}:{{blue}}
reflac Recompress FLAC files in-place while preserving metadata. More information: https://github.com/chungy/reflac. Recompress a directory of FLAC files: reflac {{path/to/directory}} Enable maximum compression (very slow): reflac --best {{path/to/directory}} Display filenames as they are processed: reflac --verbose {{path/to/directory}} Recurse into subdirectories: reflac --recursive {{path/to/directory}} Preserve file modification times: reflac --preserve {{path/to/directory}}
reflex Tool to watch a directory and rerun a command when certain files change. More information: https://github.com/cespare/reflex. Rebuild with make if any file changes: reflex make Compile and run Go application if any .go file changes: reflex --regex='{{\.go$}}' {{go run .}} Ignore a directory when watching for changes: reflex --inverse-regex='{{^dir/}}' {{command}} Run command when reflex starts and restarts on file changes: reflex --start-service=true {{command}} Substitute the filename that changed in: reflex -- echo {}
rekor-cli Immutable tamper resistant ledger of metadata generated within a software projects supply chain. More information: https://github.com/sigstore/rekor. Upload an artifact to Rekor: rekor-cli upload --artifact {{path/to/file.ext}} --signature {{path/to/file.ext.sig}} --pki-format={{x509}} --public-key={{path/to/key.pub}} Get information regarding entries in the Transparency Log: rekor-cli get --uuid={{0e81b4d9299e2609e45b5c453a4c0e7820ac74e02c4935a8b830d104632fd2d1}} Search the Rekor index to find entries by Artifact: rekor-cli search --artifact {{path/to/file.ext}} Search the Rekor index to find entries by a specific hash: rekor-cli search --sha {{6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b}}
renice Alters the scheduling priority/niceness of one or more running processes. Niceness values range from -20 (most favorable to the process) to 19 (least favorable to the process). More information: https://manned.org/renice. Change priority of a running process: renice -n {{niceness_value}} -p {{pid}} Change priority of all processes owned by a user: renice -n {{niceness_value}} -u {{user}} Change priority of all processes that belong to a process group: renice -n {{niceness_value}} --pgrp {{process_group}}
repren Multi-pattern string replacement and file renaming tool. More information: https://github.com/jlevy/repren. Do a dry-run renaming a directory of PNGs with a literal string replacement: repren --dry-run --rename --literal --from '{{find_string}}' --to '{{replacement_string}}' {{*.png}} Do a dry-run renaming a directory of JPEGs with a regular expression: repren --rename --dry-run --from '{{regular_expression}}' --to '{{replacement_string}}' {{*.jpg}} {{*.jpeg}} Do a find-and-replace on the contents of a directory of CSV files: repren --from '{{([0-9]+) example_string}}' --to '{{replacement_string \1}}' {{*.
restic A backup program that aims to be fast, secure and efficient. More information: https://restic.net. Initialize a backup repository in the specified local directory: restic init --repo {{path/to/repository}} Backup a directory to the repository: restic --repo {{path/to/repository}} backup {{path/to/directory}} Show backup snapshots currently stored in the repository: restic --repo {{path/to/repository}} snapshots Restore a specific backup snapshot to a target directory: restic --repo {{path/to/repository}} restore {{latest|snapshot_id}} --target {{path/to/target}} Restore a specific path from a specific backup to a target directory: restic --repo {{path/to/repository}} restore {{snapshot_id}} --target {{path/to/target}} --include {{path/to/restore}}
resume Easily setup a new resume. More information: https://github.com/jsonresume/resume-cli. Create a new resume.json file in the current working directory: resume init Validate a resume.json against schema tests to ensure it complies with the standard: resume validate Export a resume locally in a stylized HTML or PDF format: resume export {{path/to/html_or_pdf}} Start a web server that serves a local resume.json: resume serve
retry Repeat command until it succeeds or a criterion is met. More information: https://github.com/minfrin/retry. Retry a command until it succeeds: retry {{command}} Retry a command every n seconds until it succeeds: retry --delay={{n}} {{command}} Give up after n attempts: retry --times={{n}} {{command}}
rev Reverse a line of text. More information: https://manned.org/rev. Reverse the text string “hello”: echo "hello" | rev Reverse an entire file and print to stdout: rev {{path/to/file}}
rfetch A configurable fetch program to output system information. More information: https://github.com/kamui-fin/rfetch. Display system information: rfetch Display system [a]rchitecture: rfetch -a Display system up[t]ime: rfetch -t Display system [k]ernel: rfetch -k Display system [c]PU: rfetch -c Display Linux [D]istro: rfetch -D View [d]esktop environment: rfetch -d
rg Ripgrep is a recursive line-oriented search tool. Aims to be a faster alternative to grep. More information: https://github.com/BurntSushi/ripgrep. Recursively search the current directory for a regular expression: rg {{regular_expression}} Search for regular expressions recursively in the current directory, including hidden files and files listed in .gitignore: rg --no-ignore --hidden {{regular_expression}} Search for a regular expression only in a subset of directories: rg {{regular_expression}} {{set_of_subdirs}} Search for a regular expression in files matching a glob (e.
rga Ripgrep wrapper with rich file type searching capabilities. More information: https://github.com/phiresky/ripgrep-all. Search recursively for a pattern in all files in the current directory: rga {{regular_expression}} List available adapters: rga --rga-list-adapters Change which adapters to use (e.g. ffmpeg, pandoc, poppler etc.): rga --rga-adapters={{adapter1,adapter2}} {{regular_expression}} Search for a pattern using the mime type instead of the file extension (slower): rga --rga-accurate {{regular_expression}} Display detailed help: rga --help
rgpt An automated code review tool that uses GPT you can use straight from your terminal. More information: https://github.com/vibovenkat123/review-gpt. Ask GPT to improve the code with no extra options: rgpt --i "$(git diff {{path/to/file}})" Get a more detailed verbose output from rgpt while reviewing the code: rgpt --v --i "$(git diff {{path/to/file}})" Ask GPT to improve the code and limit it to a certain amount of GPT3 tokens: rgpt --max {{300}} --i "$(git diff {{path/to/file}})"
rgrep Recursively find patterns in files using regular expressions. Equivalent to grep -r. More information: https://www.gnu.org/software/grep/manual/grep.html. Recursively search for a pattern in the current working directory: rgrep "{{search_pattern}}" Recursively search for a case-insensitive pattern in the current working directory: rgrep --ignore-case "{{search_pattern}}" Recursively search for an extended regular expression pattern (supports ?, +, {}, () and |) in the current working directory: rgrep --extended-regexp "{{search_pattern}}" Recursively search for an exact string (disables regular expressions) in the current working directory: rgrep --fixed-strings "{{exact_string}}"
rhash Calculate or check common message digests. More information: https://rhash.sourceforge.net/manpage.php. Calculate default CRC32 digests of a file: rhash {{path/to/file}} Recursively process a directory to generate an SFV file using SHA1: rhash --sha1 --recursive {{path/to/folder}} > {{path/to/output.sfv}} Verify the integrity of files based on an SFV file: rhash --check {{path/to/file.sfv}} Calculate the SHA3 digest of a text message: rhash --sha3-256 --message '{{message}}' Calculate CRC32 digest of a file and output digest encoded in base64 using BSD format: rhash --base64 --bsd {{path/to/file}}
rich A toolbox for fancy output in the terminal. More information: https://github.com/Textualize/rich-cli. Display a file with syntax highlighting: rich {{path/to/file.py}} Add line numbers, and indentation guides: rich {{path/to/file.py}} --line-number --guides Apply a theme: rich {{path/to/file.py}} --theme {{monokai}} Display a file in an interactive pager: rich {{path/to/file.py}} --pager Display contents from a URL: rich {{https://raw.githubusercontent.com/Textualize/rich-cli/main/README.md}} --markdown --pager Export a file as HTML: rich {{path/to/file.md}} --export-html {{path/to/file.html}} Display text with formatting tags, custom alignment, and line width: rich --print {{"Hello [green on black]Stylized[/green on black] [bold]World[/bold]"}} --{{left|center|right}} --width {{10}}
rip Remove files or directories by sending them to the graveyard, allowing for them to be recovered. More information: https://github.com/nivekuil/rip. Remove files or directories from specified locations and place them in the graveyard: rip {{path/to/file_or_directory}} {{path/to/another/file_or_directory}} Interactively remove files or directories, with a prompt before every removal: rip --inspect {{path/to/file_or_directory}} {{path/to/another/file_or_directory}} List all files and directories in the graveyard that were originally within the current directory: rip --seance Permanently delete every file and directory in the graveyard: rip --decompose
ripgrep ripgrep is the common name for the command rg. View documentation for the original command: tldr rg
rm Remove files or directories. See also: rmdir. More information: https://www.gnu.org/software/coreutils/rm. Remove specific files: rm {{path/to/file1 path/to/file2 ...}} Remove specific files ignoring nonexistent ones: rm -f {{path/to/file1 path/to/file2 ...}} Remove specific files [i]nteractively prompting before each removal: rm -i {{path/to/file1 path/to/file2 ...}} Remove specific files printing info about each removal: rm -v {{path/to/file1 path/to/file2 ...}} Remove specific files and directories [r]ecursively: rm -r {{path/to/file_or_directory1 path/to/file_or_directory2 ...}}
rmdir Remove directories without files. See also: rm. More information: https://www.gnu.org/software/coreutils/rmdir. Remove specific directories: rmdir {{path/to/directory1 path/to/directory2 ...}} Remove specific nested directories recursively: rmdir -p {{path/to/directory1 path/to/directory2 ...}}
rmlint Identify duplicate files or directories, and other filesystem issues. More information: https://rmlint.readthedocs.io/en/latest/rmlint.1.html. Check a directory for duplicates, empty files, and other issues: rmlint {{path/to/directory}} Delete duplicate files found by an execution of rmlint: ./rmlint.sh Find duplicate directory trees: rmlint --merge-directories {{path/to/directory}} Mark files at lower path [d]epth as originals: rmlint --rank-by={{d}} {{path/to/directory}} Mark files with shortest name [l]ength as originals: rmlint --rank-by={{l}} {{path/to/directory}} Find only duplicates that have the same filename in addition to the same contents: rmlint --match-basename {{path/to/directory}}
roave-backward-compatibility-check A tool that can be used to verify backward compatibility breaks between two versions of a PHP library. More information: https://github.com/Roave/BackwardCompatibilityCheck. Check for breaking changes since the last tag: roave-backward-compatibility-check Check for breaking changes since a specific tag: roave-backward-compatibility-check --from={{git_reference}} Check for breaking changes between the last tag and a specific reference: roave-backward-compatibility-check --to={{git_reference}} Check for breaking changes and output to Markdown: roave-backward-compatibility-check --format=markdown > {{results.md}}
robo PHP task runner. More information: https://robo.li/. List available commands: robo list Run a specific command: robo {{foo}} Simulate running a specific command: robo --simulate {{foo}}
roll Rolls a user-defined dice sequence. More information: https://manned.org/roll. Roll 3 6-sided dice and sums the results: roll {{3d}} Roll 1 8-sided die, add 3 and sum the results: roll {{d8 + 3}} Roll 4 6-sided dice, keep the 3 highest results and sum the results: roll {{4d6h3}} Roll 2 12-sided dice 2 times and show every roll: roll --verbose {{2{2d12}}} Roll 2 20-sided dice until the result is bigger than 10: roll "{{2d20>10}}"
ROPgadget Find ROP gadgets in binary files. More information: https://github.com/JonathanSalwan/ROPgadget. List gadgets in the binary file: ROPgadget --binary {{path/to/binary}} Filter gadgets in the binary file by a regular expression: ROPgadget --binary {{path/to/binary}} --re {{regex}} List gadgets in the binary file, excluding specified type: ROPgadget --binary {{path/to/binary}} --{{norop|nojob|nosys}} Exclude bad byte gadgets in the binary file: ROPgadget --binary {{path/to/binary}} --badbytes {{byte_string}} List gadgets up to the specified number of bytes in the binary file: ROPgadget --binary {{path/to/binary}} --depth {{nbyte}}
ropper Find ROP gadgets in binary files. More information: http://scoding.de/ropper/. List gadgets in the binary file: ropper --file {{path/to/binary}} Filter gadgets in the binary file by a regular expression: ropper --file {{path/to/binary}} --search {{regex}} List gadgets of specified type in the binary file: ropper --file {{path/to/binary}} --type {{rop|job|sys|all}} Exclude bad byte gadgets in the binary file: ropper --file {{path/to/binary}} --badbytes {{byte_string}} List gadgets up to the specified instruction count in the binary file: ropper --file {{path/to/binary}} --inst-count {{count}}
route Use route cmd to set the route table. More information: https://manned.org/route. Display the information of route table: route -n Add route rule: sudo route add -net {{ip_address}} netmask {{netmask_address}} gw {{gw_address}} Delete route rule: sudo route del -net {{ip_address}} netmask {{netmask_address}} dev {{gw_address}}
rpi-imager Flash images onto storage devices. More information: https://github.com/raspberrypi/rpi-imager. Write a specific image to a specific block device: rpi-imager --cli {{path/to/image.zip}} {{/dev/sdX}} Write a specific image to a block device, disabling the checksum verification: rpi-imager --cli --disable-verify {{path/to/image.zip}} {{/dev/sdX}} Write a specific image to a block device, which will expect a specific checksum when running the verification: rpi-imager --cli --sha256 {{expected_hash}} {{path/to/image.zip}} {{/dev/sdX}}
rr Debugging tool designed to record and replay program execution. More information: https://rr-project.org/. Record an application: rr record {{path/to/binary --arg1 --arg2}} Replay latest recorded execution: rr replay
Rscript Run a script with the R programming language. More information: https://www.r-project.org. Run a script: Rscript {{path/to/file.R}} Run a script in vanilla mode (i.e. a blank session that doesn’t save the workspace at the end): Rscript --vanilla {{path/to/file.R}} Execute one or more R expressions: Rscript -e {{expression1}} -e {{expression2}} Display R version: Rscript --version
rspec Behavior-driven development testing framework written in Ruby to test Ruby code. More information: https://rspec.info. Initialize an .rspec config and a spec helper file: rspec --init Run all tests: rspec Run a specific directory of tests: rspec {{path/to/directory}} Run a specific test file: rspec {{path/to/file}} Run multiple test files: rspec {{path/to/file1}} {{path/to/file2}} Run a specific test in a file (e.g. the test starts on line 83): rspec {{path/to/file}}:{{83}} Run specs with a specific seed: rspec --seed {{seed_number}}
rss2email Tool for delivering news from RSS feeds to an email program. More information: https://github.com/rss2email/rss2email. List all feeds: r2e list Convert RSS entries to email: r2e run Add a feed: r2e add {{feed_address}} Add a feed with a specific email address: r2e add {{feed_address}} {{new_email@example.com}} Delete a specific feed: r2e delete {{number_of_feed_in_list}} Display help: r2e -h
rsstail tail for RSS feeds. More information: https://github.com/gvalkov/rsstail.py. Show the feed of a given URL and wait for new entries appearing at the bottom: rsstail -u {{url}} Show the feed in reverse chronological order (newer at the bottom): rsstail -r -u {{url}} Include publication date and link: rsstail -pl -u {{url}} Set update interval: rsstail -u {{url}} -i {{interval_in_seconds}} Show feed and exit: rsstail -1 -u {{url}}
rsync Transfer files either to or from a remote host (but not between two remote hosts), by default using SSH. To specify a remote path, use host:path/to/file_or_directory. More information: https://download.samba.org/pub/rsync/rsync.1. Transfer a file: rsync {{path/to/source}} {{path/to/destination}} Use archive mode (recursively copy directories, copy symlinks without resolving and preserve permissions, ownership and modification times): rsync --archive {{path/to/source}} {{path/to/destination}} Compress the data as it is sent to the destination, display verbose and human-readable progress, and keep partially transferred files if interrupted: rsync --compress --verbose --human-readable --partial --progress {{path/to/source}} {{path/to/destination}}
rtl_sdr Raw data recorder for RTL-SDR receivers. Data is encoded using I/Q sampling (aka quadrature sampling). More information: https://osmocom.org/projects/rtl-sdr/wiki/Rtl-sdr. Save RAW data from a frequency (specified in Hz) to a file: rtl_sdr -f {{100000000}} {{path/to/file}} Pipe data to another program: rtl_sdr -f {{100000000}} - | {{aplay}} Read a specified number of samples: rtl_sdr -f {{100000000}} -n {{20}} - Specify the sample rate in Hz (ranges 225001-300000 and 900001-3200000): rtl_sdr -f {{100000000}} -s {{2400000}} -
rtmpdump A tool to dump media content streamed over the RTMP protocol. More information: http://rtmpdump.mplayerhq.hu/. Download a file: rtmpdump --rtmp {{rtmp://example.com/path/to/video}} -o {{file.ext}} Download a file from a Flash player: rtmpdump --rtmp {{rtmp://example.com/path/to/video}} --swfVfy {{http://example.com/player}} --flashVer "{{LNX 10,0,32,18}}" -o {{file.ext}} Specify connection parameters if they are not detected correctly: rtmpdump --rtmp {{rtmp://example.com/path/to/video}} --app {{app_name}} --playpath {{path/to/video}} -o {{file.ext}} Download a file from a server that requires a referrer: rtmpdump --rtmp {{rtmp://example.
rtv Reddit Terminal Viewer. Use arrow keys to navigate. Right and Left to view and return from a submission, respectively. More information: https://github.com/michael-lazar/rtv. Open the front page: /front Open a subreddit: /r/{{subreddit_name}} Expand/collapse comments: [space] Open link: o Log in: u Open the help screen: ?
rubocop Lint Ruby files. More information: https://docs.rubocop.org/rubocop/usage/basic_usage.html. Check all files in the current directory (including subdirectories): rubocop Check one or more specific files or directories: rubocop {{path/to/file}} {{path/to/directory}} Write output to file: rubocop --out {{path/to/file}} View list of cops (linter rules): rubocop --show-cops Exclude a cop: rubocop --except {{cop_1}} {{cop_2}} Run only specified cops: rubocop --only {{cop_1}} {{cop_2}} Auto-correct files (experimental): rubocop --auto-correct
ruby Ruby programming language interpreter. See also: gem, bundler, rake, irb. More information: https://www.ruby-lang.org. Execute a Ruby script: ruby {{script.rb}} Execute a single Ruby command in the command-line: ruby -e {{command}} Check for syntax errors on a given Ruby script: ruby -c {{script.rb}} Start the built-in HTTP server on port 8080 in the current directory: ruby -run -e httpd Show the version of Ruby you are using: ruby -v
runit 3-stage init system. More information: http://smarden.org/runit/runit.8.html. Start runit’s 3-stage init scheme: runit Shut down runit: kill --CONT {{runit_pid}}
runsv Start and manage a runit service. More information: https://manpages.ubuntu.com/manpages/latest/man8/runsv.8.html. Start a runit service as the current user: runsv {{path/to/service}} Start a runit service as root: sudo runsv {{path/to/service}}
runsvchdir Change the directory runsvdir uses by default. More information: https://manpages.ubuntu.com/manpages/latest/man8/runsvchdir.8.html. Switch runsvdir directories: sudo runsvchdir {{path/to/directory}}
runsvdir Run an entire directory of services. More information: https://manpages.ubuntu.com/manpages/latest/man8/runsvdir.8.html. Start and manage all services in a directory as the current user: runsvdir {{path/to/services}} Start and manage all services in a directory as root: sudo runsvdir {{path/to/services}} Start services in separate sessions: runsvdir -P {{path/to/services}}
rustc The Rust compiler. Rust projects usually use cargo instead of invoking rustc directly. More information: https://doc.rust-lang.org/rustc. Compile a binary crate: rustc {{path/to/main.rs}} Compile with optimizations (s means optimize for binary size; z is the same with even more optimizations): rustc -C lto -C opt-level={{0|1|2|3|s|z}} {{path/to/main.rs}} Compile with debugging information: rustc -g {{path/to/main.rs}} Explain an error message: rustc --explain {{error_code}} Compile with architecture-specific optimizations for the current CPU: rustc -C target-cpu={{native}} {{path/to/main.
rustfmt Tool for formatting Rust source code. More information: https://github.com/rust-lang/rustfmt. Format a file, overwriting the original file in-place: rustfmt {{path/to/source.rs}} Check a file for formatting and display any changes on the console: rustfmt --check {{path/to/source.rs}} Backup any modified files before formatting (the original file is renamed with a .bk extension): rustfmt --backup {{path/to/source.rs}}
rustup Install, manage, and update Rust toolchains. Some subcommands, such as toolchain, target, update, etc. have their own usage documentation. More information: https://rust-lang.github.io/rustup. Install the nightly toolchain for your system: rustup install nightly Switch the default toolchain to nightly so that the cargo and rustc commands will use it: rustup default nightly Use the nightly toolchain when inside the current project but leave global settings unchanged: rustup override set nightly
rustup check Check for updates to Rust toolchains and rustup. More information: https://rust-lang.github.io/rustup. Check for all updates: rustup check
rustup default Set the default Rust toolchain. More information: https://rust-lang.github.io/rustup. Switch the default Rust toolchain (see rustup help toolchain for more information): rustup default {{toolchain}}
rustup-init.sh Script to install rustup and the Rust toolchain. More information: https://forge.rust-lang.org/infra/other-installation-methods.html#rustup. Download and run rustup-init to install rustup and the default Rust toolchain: curl https://sh.rustup.rs -sSf | sh -s Download and run rustup-init and pass arguments to it: curl https://sh.rustup.rs -sSf | sh -s -- {{arguments}} Run rustup-init and specify additional components or targets to install: rustup-init.sh --target {{target}} --component {{component}} Run rustup-init and specify the default toolchain to install: rustup-init.
rustup show Show installed toolchains, targets and the version of rustc. More information: https://rust-lang.github.io/rustup. Show all information: rustup show Show the active toolchain: rustup show active-toolchain Show the rustup data directory: rustup show home
rustup target Modify a toolchain’s supported targets. Without the --toolchain option rustup will use the default toolchain. See rustup help toolchain for more information about toolchains. More information: https://rust-lang.github.io/rustup. Add a target to a toolchain: rustup target add --toolchain {{toolchain}} {{target}} Remove a target from a toolchain: rustup target remove --toolchain {{toolchain}} {{target}} List available and installed targets for a toolchain: rustup target list --toolchain {{toolchain}} List installed targets for a toolchain: rustup target list --toolchain {{toolchain}} --installed
rustup toolchain Manage Rust toolchains. See rustup help toolchain for more information about toolchains. More information: https://rust-lang.github.io/rustup. Install or update a given toolchain: rustup install {{toolchain}} Uninstall a toolchain: rustup uninstall {{toolchain}} List installed toolchains: rustup list Create a custom toolchain by symlinking to a directory: rustup link {{custom_toolchain_name}} {{path/to/directory}}
rustup update Update Rust toolchains and rustup itself (if not installed using a package manager). More information: https://rust-lang.github.io/rustup. Update all installed toolchains and rustup: rustup update Install or update a specific toolchain (see rustup help toolchain for more information): rustup update {{toolchain}}
rvm A tool for easily installing, managing, and working with multiple ruby environments. More information: https://rvm.io. Install one or more space-separated versions of Ruby: rvm install {{version(s)}} Display a list of installed versions: rvm list Use a specific version of Ruby: rvm use {{version}} Set the default Ruby version: rvm --default use {{version}} Upgrade a version of Ruby to a new version: rvm upgrade {{current_version}} {{new_version}} Uninstall a version of Ruby and keep its sources: rvm uninstall {{version}}
s Web search from the terminal. More information: https://github.com/zquestz/s. Search for a query on Google (default provider): s {{query}} List all providers: s --list-providers Search for a query with a given provider: s --provider {{provider}} {{query}} Use a specified binary to perform the search query: s --binary "{{binary}} {{arguments}}" {{query}}
s3cmd Command line tool and client for uploading, retrieving and managing data in S3 compatible object storage. More information: https://s3tools.org/s3cmd. Invoke configuration/reconfiguration tool: s3cmd --configure List Buckets/Folders/Objects: s3cmd ls s3://{{bucket|path/to/file}} Create Bucket/Folder: s3cmd mb s3://{{bucket}} Download a specific file from a bucket: s3cmd get s3://{{bucket_name}}/{{path/to/file}} {{path/to/local_file}} Upload a file to a bucket: s3cmd put {{local_file}} s3://{{bucket}}/{{file}} Move an object to a specific bucket location: s3cmd mv s3://{{src_bucket}}/{{src_object}} s3://{{dst_bucket}}/{{dst_object}} Delete a specific object: s3cmd rm s3://{{bucket}}/{{object}}
safe Interact with HashiCorp Vault. More information: https://github.com/starkandwayne/safe. Add a safe target: safe target {{vault_addr}} {{target_name}} Authenticate the CLI client against the Vault server, using an authentication token: safe auth {{authentication_token}} Print the environment variables describing the current target: safe env Display a tree hierarchy of all reachable keys for a given path: safe tree {{path}} Move a secret from one path to another: safe move {{old/path/to/secret}} {{new/path/to/secret}} Generate a new 2048-bit SSH key-pair and store it: safe ssh {{2048}} {{path/to/secret}}
sails Sails.js is a realtime enterprise level MVC framework built on top of Node.js. More information: https://sailsjs.com. Start Sails: sails lift Create new Sails project: sails new {{projectName}} Generate Sails API: sails generate {{name}} Generate Sails Controller: sails generate controller {{name}} Generate Sails Model: sails generate model {{name}}
salt Execute commands and assert state on remote salt minions. More information: https://docs.saltstack.com/ref/cli/salt.html. List connected minions: salt '*' test.ping Execute a highstate on all connected minions: salt '*' state.highstate Upgrade packages using the OS package manager (apt, yum, brew) on a subset of minions: salt '*.example.com' pkg.upgrade Execute an arbitrary command on a particular minion: salt '{{minion_id}}' cmd.run "ls "
salt-call Invoke salt locally on a salt minion. More information: https://docs.saltstack.com/ref/cli/salt-call.html. Perform a highstate on this minion: salt-call state.highstate Perform a highstate dry-run, compute all changes but don’t actually perform them: salt-call state.highstate test=true Perform a highstate with verbose debugging output: salt-call -l debug state.highstate List this minion’s grains: salt-call grains.items
salt-key Manages salt minion keys on the salt master. Needs to be run on the salt master, likely as root or with sudo. More information: https://docs.saltstack.com/ref/cli/salt-key.html. List all accepted, unaccepted and rejected minion keys: salt-key -L Accept a minion key by name: salt-key -a {{MINION_ID}} Reject a minion key by name: salt-key -r {{MINION_ID}} Print fingerprints of all public keys: salt-key -F
salt-run Frontend for executing salt-runners on minions. More information: https://docs.saltstack.com/ref/cli/salt-run.html. Show status of all minions: salt-run manage.status Show all minions which are disconnected: salt-run manage.up
sam2p Raster (bitmap) image converter with smart PDF and PostScript (EPS) output. More information: http://pts.50.hu/sam2p/. Concatenate all PDF files into one: sam2p *.pdf {{path/to/output.pdf}}
samtools Tools for handling high-throughput sequencing (genomics) data. Used for reading/writing/editing/indexing/viewing of data in SAM/BAM/CRAM format. More information: https://www.htslib.org. Convert a SAM input file to BAM stream and save to file: samtools view -S -b {{input.sam}} > {{output.bam}} Take input from stdin (-) and print the SAM header and any reads overlapping a specific region to stdout: {{other_command}} | samtools view -h - chromosome:start-end Sort file and save to BAM (the output format is automatically determined from the output file’s extension): samtools sort {{input}} -o {{output.
sass Converts SCSS or Sass files to CSS. More information: https://sass-lang.com/documentation/cli/dart-sass. Convert a SCSS or Sass file to CSS and print out the result: sass {{inputfile.scss|inputfile.sass}} Convert a SCSS or Sass file to CSS and save the result to a file: sass {{inputfile.scss|inputfile.sass}} {{outputfile.css}} Watch a SCSS or Sass file for changes and output or update the CSS file with same filename: sass --watch {{inputfile.scss|inputfile.sass}} Watch a SCSS or Sass file for changes and output or update the CSS file with the given filename: sass --watch {{inputfile.
satis The command-line utility for the Satis static Composer repository. More information: https://github.com/composer/satis. Initialize a Satis configuration: satis init {{satis.json}} Add a VCS repository to the Satis configuration: satis add {{repository_url}} Build the static output from the configuration: satis build {{satis.json}} {{path/to/output_directory}} Build the static output by updating only the specified repository: satis build --repository-url {{repository_url}} {{satis.json}} {{path/to/output_directory}} Remove useless archive files: satis purge {{satis.json}} {{path/to/output_directory}}
sbcl High performance Common Lisp compiler. More information: http://www.sbcl.org/. Start a REPL (interactive shell): sbcl Execute a Lisp script: sbcl --script {{path/to/script.lisp}}
sbt Build tool for Scala and Java projects. More information: https://www.scala-sbt.org/1.x/docs/. Start a REPL (interactive shell): sbt Create a new Scala project from an existing Giter8 template hosted on GitHub: sbt new {{scala/hello-world.g8}} Compile and run all tests: sbt test Delete all generated files in the target directory: sbt clean Compile the main sources in src/main/scala and src/main/java directories: sbt compile Use the specified version of sbt: sbt -sbt-version {{version}}
SC-IM A curses based, vim-like spreadsheet calculator. Use hjkl or arrow keys to navigate. More information: https://github.com/andmarti1424/sc-im. Start SC-IM: scim {{path/to/file.csv}} Enter a string into the current cell: < or > Enter a numeric constant into the current cell: = Edit string in the current cell: E Edit number in the current cell: e Center align the current cell: |
scala Scala application launcher and interactive interpreter. More information: https://scala-lang.org. Start a REPL (interactive shell): scala Start the interpreter with a dependency in the classpath: scala -classpath {{filename.jar}} {{command}} Execute a Scala script: scala {{script.scala}} Execute a .jar program: scala {{filename.jar}} Execute a single Scala command in the command-line: scala -e {{command}}
scalafmt Code formatter for Scala. Configurations are stored in the .scalafmt.conf file. More information: https://scalameta.org/scalafmt. Reformat all .scala files in the current directory recursively: scalafmt Reformat specific files or directories with a custom formatting configuration: scalafmt --config {{path/to/.scalafmt.conf}} {{path/to/file_or_directory}} {{path/to/file_or_directory}} {{...}} Check if files are correctly formatted, returning 0 if all files respect the formatting style: scalafmt --config {{path/to/.scalafmt.conf}} --test Exclude files or directories: scalafmt --exclude {{path/to/file_or_directory}} {{...}} Format only files that were edited against the current Git branch: scalafmt --config {{path/to/.
scan-build Command-line utility to run a static analyzer over a codebase as part of performing a regular build. More information: https://clang-analyzer.llvm.org/scan-build.html. Build and analyze the project in the current directory: scan-build {{make}} Run a command and pass all subsequent options to it: scan-build {{command}} {{command_arguments}} Display help: scan-build
scc Tool written in Go that counts lines of code. More information: https://github.com/boyter/scc. Print lines of code in the current directory: scc Print lines of code in the target directory: scc {{path/to/directory}} Display output for every file: scc --by-file Display output using a specific output format (defaults to tabular): scc --format {{tabular|wide|json|csv|cloc-yaml|html|html-table}} Only count files with specific file extensions: scc --include-ext {{go, java, js}} Exclude directories from being counted: scc --exclude-dir {{.
sccmap Extract strongly connected components of directed graphs. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://www.graphviz.org/pdf/sccmap.1.pdf. Extract strongly connected components of one or more directed graphs: sccmap -S {{path/to/input1.gv}} {{path/to/input2.gv ...}} > {{path/to/output.gv}} Print statistics about a graph, producing no output graph: sccmap -v -s {{path/to/input1.gv}} {{path/to/input2.gv ...}} Display help for sccmap: sccmap -?
scd File manager focused on shell integration. More information: https://github.com/cshuaimin/scd. Index paths recursively for the very first run: scd -ar {{path/to/directory}} Change to a specific directory: scd {{path/to/directory}} Change to a path matching specific patterns: scd "{{pattern1 pattern2 ...}}" Show selection menu and ranking of 20 most likely directories: scd -v Add a specific alias for the current directory: scd --alias={{word}} Change to a directory using a specific alias: scd {{word}}
scheme MIT Scheme language interpreter and REPL (interactive shell). More information: https://www.gnu.org/software/mit-scheme. Start a REPL (interactive shell): scheme Run a scheme program (with no REPL output): scheme --quiet < {{script.scm}} Load a scheme program into the REPL: scheme --load {{script.scm}} Load scheme expressions into the REPL: scheme --eval "{{(define foo 'x)}}" Open the REPL in quiet mode: scheme --quiet
scp Secure copy. Copy files between hosts using Secure Copy Protocol over SSH. More information: https://man.openbsd.org/scp. Copy a local file to a remote host: scp {{path/to/local_file}} {{remote_host}}:{{path/to/remote_file}} Use a specific port when connecting to the remote host: scp -P {{port}} {{path/to/local_file}} {{remote_host}}:{{path/to/remote_file}} Copy a file from a remote host to a local directory: scp {{remote_host}}:{{path/to/remote_file}} {{path/to/local_directory}} Recursively copy the contents of a directory from a remote host to a local directory: scp -r {{remote_host}}:{{path/to/remote_directory}} {{path/to/local_directory}}
scrapy Web-crawling framework. More information: https://scrapy.org. Create a project: scrapy startproject {{project_name}} Create a spider (in project directory): scrapy genspider {{spider_name}} {{website_domain}} Edit spider (in project directory): scrapy edit {{spider_name}} Run spider (in project directory): scrapy crawl {{spider_name}} Fetch a webpage as Scrapy sees it and print the source to stdout: scrapy fetch {{url}} Open a webpage in the default browser as Scrapy sees it (disable JavaScript for extra fidelity): scrapy view {{url}}
scrcpy Display and control your Android device on a desktop. More information: https://github.com/Genymobile/scrcpy. Display a mirror of a connected device: scrcpy Display a mirror of a specific device based on its ID or IP address (find it under the adb devices command): scrcpy --serial {{0123456789abcdef|192.168.0.1:5555}} Start display in fullscreen mode: scrcpy --fullscreen Rotate the display screen. Each incremental value adds a 90 degree counterclockwise rotation: scrcpy --rotation {{0|1|2|3}} Show touches on physical device: scrcpy --show-touches
screen Hold a session open on a remote server. Manage multiple windows with a single SSH connection. See also tmux and zellij. More information: https://manned.org/screen. Start a new screen session: screen Start a new named screen session: screen -S {{session_name}} Start a new daemon and log the output to screenlog.x: screen -dmLS {{session_name}} {{command}} Show open screen sessions: screen -ls Reattach to an open screen: screen -r {{session_name}} Detach from inside a screen: Ctrl + A, D
screenfetch Display system information. More information: https://github.com/KittyKatt/screenFetch. Start screenfetch: screenfetch Take a screenshot (requires ‘scrot’): screenfetch -s Specify distribution logo: screenfetch -A '{{distribution_name}}' Specify distribution logo and text: screenfetch -D '{{distribution_name}}' Strip all color: screenfetch -N
script Make a typescript file of a terminal session. More information: https://manned.org/script. Start recording in file named “typescript”: script Stop recording: exit Start recording in a given file: script {{logfile.log}} Append to an existing file: script -a {{logfile.log}} Execute quietly without start and done messages: script -q {{logfile.log}}
sd Intuitive find and replace. More information: https://github.com/chmln/sd. Trim some whitespace using a regular expression (output stream: stdout): {{echo 'lorem ipsum 23 '}} | sd '\s+$' '' Replace words using capture groups (output stream: stdout): {{echo 'cargo +nightly watch'}} | sd '(\w+)\s+\+(\w+)\s+(\w+)' 'cmd: $1, channel: $2, subcmd: $3' Find and replace in a specific file (output stream: stdout): sd -p {{'window.fetch'}} {{'fetch'}} {{path/to/file.js}} Find and replace in all files in the current project (output stream: stdout): sd {{'from "react"'}} {{'from "preact"'}} "$(find .
sdcv StarDict, a command-line dictionary client. Dictionaries are provided separately from the client. More information: https://manned.org/sdcv. Start sdcv interactively: sdcv List installed dictionaries: sdcv --list-dicts Display a definition from a specific dictionary: sdcv --use-dict {{dictionary_name}} {{search_term}} Look up a definition with a fuzzy search: sdcv {{search_term}} Look up a definition with an exact search: sdcv --exact-search {{search_term}} Look up a definition and format the output as JSON: sdcv --json {{search_term}}
sdiff Compare the differences between and optionally merge 2 files. More information: https://manned.org/sdiff. Compare 2 files: sdiff {{path/to/file1}} {{path/to/file2}} Compare 2 files, ignoring all tabs and whitespace: sdiff -W {{path/to/file1}} {{path/to/file2}} Compare 2 files, ignoring whitespace at the end of lines: sdiff -Z {{path/to/file1}} {{path/to/file2}} Compare 2 files in a case-insensitive manner: sdiff -i {{path/to/file1}} {{path/to/file2}} Compare and then merge, writing the output to a new file: sdiff -o {{path/to/merged_file}} {{path/to/file1}} {{path/to/file2}}
sdk Tool for managing parallel versions of multiple Software Development Kits. Supports Java, Groovy, Scala, Kotlin, Gradle, Maven, Vert.x and many others. More information: https://sdkman.io/usage. Install an SDK version: sdk install {{sdk_name}} {{sdk_version}} Use a specific SDK version for the current terminal session: sdk use {{sdk_name}} {{sdk_version}} Show the stable version of any available SDK: sdk current {{sdk_name}} Show the stable versions of all installed SDKs: sdk current List all available SDKs: sdk list
sdkmanager Tool to install packages for the Android SDK. More information: https://developer.android.com/studio/command-line/sdkmanager. List available packages: sdkmanager --list Install a package: sdkmanager {{package}} Update every installed package: sdkmanager --update Uninstall a package: sdkmanager --uninstall {{package}}
searchsploit Searchsploit searches exploit database’s database for exploits, shellcodes and/or papers. If known version numbers are used as search terms, exploits for both the exact version and others whose version range covers the one specified are shown. More information: https://www.exploit-db.com/searchsploit. Search for an exploit, shellcode, or paper: searchsploit {{search_terms}} Search for a known specific version, e.g. sudo version 1.8.27: searchsploit sudo 1.8.27 Show the exploit-db link to the found resources: searchsploit --www {{search_terms}}
secrethub A tool to keep secrets out of config files. More information: https://secrethub.io. Print a secret to stdout: secrethub read {{path/to/secret}} Generate a random value and store it as a new or updated secret: secrethub generate {{path/to/secret}} Store a value from the clipboard as a new or updated secret: secrethub write --clip {{path/to/secret}} Store a value supplied on stdin as a new or updated secret: echo "{{secret_value}}" | secrethub write {{path/to/secret}}
security-checker Check if a PHP application uses dependencies with known security vulnerabilities. More information: https://github.com/sensiolabs/security-checker. Look for security issues in the project dependencies (based on the composer.lock file in the current directory): security-checker security:check Use a specific composer.lock file: security-checker security:check {{path/to/composer.lock}} Return results as a JSON object: security-checker security:check --format=json
sed Edit text in a scriptable manner. See also: awk, ed. More information: https://www.gnu.org/software/sed/manual/sed.html. Replace all apple (basic regex) occurrences with mango (basic regex) in all input lines and print the result to stdout: {{command}} | sed 's/apple/mango/g' Execute a specific script [f]ile and print the result to stdout: {{command}} | sed -f {{path/to/script.sed}} Print just a first line to stdout: {{command}} | sed -n '1p'
semver Semantic version string parser. More information: https://github.com/npm/node-semver. Check if a version string respects the semantic versioning format (prints an empty string if it does not match): semver {{1.2}} Convert a version string to the semantic versioning format: semver --coerce {{1.2}} Test if 1.2.3 matches the ^1.0 range (prints an empty string if it does not match): semver {{1.2.3}} --range "{{^1.0}}" Test with multiple ranges: semver {{1.2.3}} --range {{">=1.0"}} {{"<2.0"}}
sendmail Send email. More information: https://manned.org/sendmail. Send a message with the content of message.txt to the mail directory of local user username: sendmail {{username}} < {{message.txt}} Send an email from you@yourdomain.com (assuming the mail server is configured for this) to test@gmail.com containing the message in message.txt: sendmail -f {{you@yourdomain.com}} {{test@gmail.com}} < {{message.txt}} Send an email from you@yourdomain.com (assuming the mail server is configured for this) to test@gmail.com containing the file file.
seq Output a sequence of numbers to stdout. More information: https://www.gnu.org/software/coreutils/seq. Sequence from 1 to 10: seq 10 Every 3rd number from 5 to 20: seq 5 3 20 Separate the output with a space instead of a newline: seq -s " " 5 3 20 Format output width to a minimum of 4 digits padding with zeros as necessary: seq -f "%04g" 5 3 20
sequelize Promise-based Node.js ORM for Postgres, MySQL, MariaDB, SQLite and Microsoft SQL Server. More information: https://sequelize.org/. Create a model with 3 fields and a migration file: sequelize model:generate --name {{table_name}} --attributes {{field1:integer,field2:string,field3:boolean}} Run the migration file: sequelize db:migrate Revert all migrations: sequelize db:migrate:undo:all Create a seed file with the specified name to populate the database: sequelize seed:generate --name {{seed_filename}} Populate database using all seed files: sequelize db:seed:all
serialver Returns the serialVersionUID of classes. It does not set a security manager by default. More information: https://docs.oracle.com/en/java/javase/20/docs/specs/man/serialver.html. Display the serialVersionUID of a class: serialver {{classnames}} Display the serialVersionUID for a colon-separated list of classes and resources: serialver -classpath {{path/to/directory}} {{classname1:classname2:...}} Use a specific option from reference page of Java application launcher to the Java Virtual Machine: serialver -Joption {{classnames}}
serve Static file serving and directory listing. More information: https://github.com/vercel/serve. Start an HTTP server listening on the default port to serve the current directory: serve Start an HTTP server on a specific [p]ort to serve a specific directory: serve -p {{port}} {{path/to/directory}} Start an HTTP server with CORS enabled by including the Access-Control-Allow-Origin: * header in all responses: serve --cors Start an HTTP server on the default port rewriting all not-found requests to the index.
serverless Toolkit for deploying and operating serverless architectures on AWS, Google Cloud, Azure and IBM OpenWhisk. Commands can be run either using the serverless command or its alias, sls. More information: https://serverless.com/. Create a serverless project: serverless create Create a serverless project from a template: serverless create --template {{template_name}} Deploy to a cloud provider: serverless deploy Display information about a serverless project: serverless info Invoke a deployed function: serverless invoke -f {{function_name}}
set Display, set or unset values of shell attributes and positional parameters. More information: https://manned.org/set. Display the names and values of shell variables: set Mark variables that are modified or created for export: set -a Notify of job termination immediately: set -b Set various options, e.g. enable vi style line editing: set -o {{vi}} Set the shell to exit as soon as the first error is encountered (mostly used in scripts): set -e
sf Salesforce CLI is a powerful command line interface that simplifies development and build automation when working with your Salesforce org. More information: https://developer.salesforce.com/tools/salesforcecli. Authorize a Salesforce Organization: sf force:auth:web:login --setalias {{organization}} --instanceurl {{organization_url}} List all authorized organizations: sf force:org:list Open a specific organization in the default web browser: sf force:org:open --targetusername {{organization}} Display information about a specific organization: sf force:org:display --targetusername {{organization}} Push source metadata to an Organization: sf force:source:push --targetusername {{organization}}
sfdp Render an image of a scaled force-directed network graph from a graphviz file. Layouts: dot, neato, twopi, circo, fdp, sfdp, osage & patchwork. More information: https://graphviz.org/doc/info/command.html. Render a png image with a filename based on the input filename and output format (uppercase -O): sfdp -T {{png}} -O {{path/to/input.gv}} Render a svg image with the specified output filename (lowercase -o): sfdp -T {{svg}} -o {{path/to/image.svg}} {{path/to/input.gv}} Render the output in ps, pdf, svg, fig, png, gif, jpg, json, or dot format: sfdp -T {{format}} -O {{path/to/input.
sftp Secure File Transfer Program. Interactive program to copy files between hosts over SSH. For non-interactive file transfers, see scp or rsync. More information: https://manned.org/sftp. Connect to a remote server and enter an interactive command mode: sftp {{remote_user}}@{{remote_host}} Connect using an alternate port: sftp -P {{remote_port}} {{remote_user}}@{{remote_host}} Connect using a predefined host (in ~/.ssh/config): sftp {{host}} Transfer remote file to the local system: get {{/path/remote_file}} Transfer local file to the remote system: put {{/path/local_file}}
sgpt Command-line productivity tool powered by OpenAI’s GPT models. More information: https://github.com/TheR1D/shell_gpt#readme. Use it as a search engine, asking for the mass of the sun: sgpt "{{mass of the sun}}" Execute Shell commands, and apply chmod 444 to all files in the current directory: sgpt --shell "{{make all files in current directory read only}}" Generate code, solving classic fizz buzz problem: sgpt --code "{{solve fizz buzz problem using Python}}" Start a chat session with a unique session name: sgpt --chat {{session_name}} "{{please remember my favorite number: 4}}"
sh Bourne shell, the standard command language interpreter. See also histexpand for history expansion. More information: https://manned.org/sh. Start an interactive shell session: sh Execute a command and then exit: sh -c "{{command}}" Execute a script: sh {{path/to/script.sh}} Read and execute commands from stdin: sh -s
sha1sum Calculate SHA1 cryptographic checksums. More information: https://www.gnu.org/software/coreutils/sha1sum. Calculate the SHA1 checksum for one or more files: sha1sum {{path/to/file1 path/to/file2 ...}} Calculate and save the list of SHA1 checksums to a file: sha1sum {{path/to/file1 path/to/file2 ...}} > {{path/to/file.sha1}} Calculate a SHA1 checksum from stdin: {{command}} | sha1sum Read a file of SHA1 sums and filenames and verify all files have matching checksums: sha1sum --check {{path/to/file.sha1}} Only show a message for missing files or when verification fails: sha1sum --check --quiet {{path/to/file.
sha224sum Calculate SHA224 cryptographic checksums. More information: https://www.gnu.org/software/coreutils/manual/html_node/sha2-utilities.html. Calculate the SHA224 checksum for one or more files: sha224sum {{path/to/file1 path/to/file2 ...}} Calculate and save the list of SHA224 checksums to a file: sha224sum {{path/to/file1 path/to/file2 ...}} > {{path/to/file.sha224}} Calculate a SHA224 checksum from stdin: {{command}} | sha224sum Read a file of SHA224 sums and filenames and verify all files have matching checksums: sha224sum --check {{path/to/file.sha224}} Only show a message for missing files or when verification fails: sha224sum --check --quiet {{path/to/file.
sha256sum Calculate SHA256 cryptographic checksums. More information: https://www.gnu.org/software/coreutils/manual/html_node/sha2-utilities.html. Calculate the SHA256 checksum for one or more files: sha256sum {{path/to/file1 path/to/file2 ...}} Calculate and save the list of SHA256 checksums to a file: sha256sum {{path/to/file1 path/to/file2 ...}} > {{path/to/file.sha256}} Calculate a SHA256 checksum from stdin: {{command}} | sha256sum Read a file of SHA256 sums and filenames and verify all files have matching checksums: sha256sum --check {{path/to/file.sha256}} Only show a message for missing files or when verification fails: sha256sum --check --quiet {{path/to/file.
sha384sum Calculate SHA384 cryptographic checksums. More information: https://www.gnu.org/software/coreutils/manual/html_node/sha2-utilities.html. Calculate the SHA384 checksum for one or more files: sha384sum {{path/to/file1 path/to/file2 ...}} Calculate and save the list of SHA384 checksums to a file: sha384sum {{path/to/file1 path/to/file2 ...}} > {{path/to/file.sha384}} Calculate a SHA384 checksum from stdin: {{command}} | sha384sum Read a file of SHA384 sums and filenames and verify all files have matching checksums: sha384sum --check {{path/to/file.sha384}} Only show a message for missing files or when verification fails: sha384sum --check --quiet {{path/to/file.
sha512sum Calculate SHA512 cryptographic checksums. More information: https://www.gnu.org/software/coreutils/manual/html_node/sha2-utilities.html. Calculate the SHA512 checksum for one or more files: sha512sum {{path/to/file1 path/to/file2 ...}} Calculate and save the list of SHA512 checksums to a file: sha512sum {{path/to/file1 path/to/file2 ...}} > {{path/to/file.sha512}} Calculate a SHA512 checksum from stdin: {{command}} | sha512sum Read a file of SHA512 sums and filenames and verify all files have matching checksums: sha512sum --check {{path/to/file.sha512}} Only show a message for missing files or when verification fails: sha512sum --check --quiet {{path/to/file.
shar Create a shell archive. More information: https://manned.org/man/freebsd/shar. Create a shell script that when executed extracts the given files from itself: shar {{path/to/file1 path/to/file2 ...}} > {{path/to/archive.sh}}
shards Dependency management tool for the Crystal language. More information: https://crystal-lang.org/reference/the_shards_command. Create a skeleton shard.yml file: shards init Install dependencies from a shard.yml file: shards install Update all dependencies: shards update List all installed dependencies: shards list List version of dependency: shards version {{path/to/dependency_directory}}
shasum Calculate SHA cryptographic checksums. More information: https://manned.org/shasum. Calculate the SHA1 checksum for one or more files: shasum {{path/to/file1 path/to/file2 ...}} Calculate the SHA256 checksum for one or more files: shasum --algorithm 256 {{path/to/file1 path/to/file2 ...}} Calculate the SHA512 checksum for one or more files: shasum --algorithm 512 {{path/to/file1 path/to/file2 ...}} Calculate a SHA1 checksum from stdin: {{command}} | shasum Calculate and save the list of SHA256 checksums to a file: shasum --algorithm 256 {{path/to/file1 path/to/file2 .
shc Generic shell script compiler. More information: https://manned.org/shc. Compile a shell script: shc -f {{script}} Compile a shell script and specify an output binary file: shc -f {{script}} -o {{binary}} Compile a shell script and set an expiration date for the executable: shc -f {{script}} -e {{dd/mm/yyyy}} Compile a shell script and set a message to display upon expiration: shc -f {{script}} -e {{dd/mm/yyyy}} -m "{{Please contact your provider}}"
shellcheck Shell script static analysis tool. Check shell scripts for errors, usage of deprecated/insecure features, and bad practices. More information: https://www.shellcheck.net. Check a shell script: shellcheck {{path/to/script.sh}} Check a shell script interpreting it as the specified shell dialect (overrides the shebang at the top of the script): shellcheck --shell {{sh|bash|dash|ksh}} {{path/to/script.sh}} Ignore one or more error types: shellcheck --exclude {{SC1009,SC1073}} {{path/to/script.sh}} Also check any sourced shell scripts: shellcheck --checked-sourced {{path/to/script.sh}}
shfmt Shell parser, formatter and interpreter. More information: https://pkg.go.dev/mvdan.cc/sh. Print a formatted version of a shell script: shfmt {{path/to/file}} List unformatted files: shfmt --list {{path/to/directory}} Write the result to the file instead of printing it to the terminal: shfmt --write {{path/to/file}} Simplify the code, removing redundant pieces of syntax (i.e. removing “$” from vars in expressions): shfmt --simplify {{path/to/file}}
shift Shell built-in command that shifts the arguments passed to the calling function or script by a specified number of places. More information: https://www.gnu.org/software/bash/manual/bash.html#index-shift. Move arguments by one place dropping the first argument: shift Move arguments by N places dropping the first N arguments: shift {{N}}
shiori Simple bookmark manager built with Go. More information: https://github.com/go-shiori/shiori. Import bookmarks from HTML Netscape bookmark format file: shiori import {{path/to/bookmarks.html}} Save the specified URL as bookmark: shiori add {{url}} List the saved bookmarks: shiori print Open the saved bookmark in a browser: shiori open {{bookmark_id}} Start the web interface for managing bookmarks at port 8181: shiori serve --port {{8181}}
shopt Manage Bash shell options: variables (stored in $BASHOPTS) that control behavior specific to the Bash shell. Generic POSIX shell variables (stored in $SHELLOPTS) are managed with the set command instead. More information: https://www.gnu.org/software/bash/manual/html_node/The-Shopt-Builtin.html. List of all settable options and whether they are set: shopt Set an option: shopt -s {{option_name}} Unset an option: shopt -u {{option_name}} Print a list of all options and their status formatted as runnable shopt commands: shopt -p
showfigfonts Display available figlet fonts. See also figlet. More information: https://manned.org/showfigfonts. Display available fonts: showfigfonts Display available fonts using a specific text: showfigfonts {{input_text}}
shred Overwrite files to securely delete data. More information: https://www.gnu.org/software/coreutils/shred. Overwrite a file: shred {{path/to/file}} Overwrite a file, leaving zeroes instead of random data: shred --zero {{path/to/file}} Overwrite a file 25 times: shred -n25 {{path/to/file}} Overwrite a file and remove it: shred --remove {{path/to/file}}
shuf Generate random permutations. More information: https://www.gnu.org/software/coreutils/shuf. Randomize the order of lines in a file and output the result: shuf {{path/to/file}} Only output the first 5 entries of the result: shuf --head-count={{5}} {{path/to/file}} Write the output to another file: shuf {{path/to/input}} --output={{path/to/output}} Generate 3 random numbers in the range 1-10 (inclusive): shuf --head-count={{3}} --input-range={{1-10}} --repeat
siege HTTP loadtesting and benchmarking tool. More information: https://www.joedog.org/siege-manual/. Test a URL with default settings: siege {{https://example.com}} Test a list of URLs: siege --file {{path/to/url_list.txt}} Test list of URLs in a random order (Simulates internet traffic): siege --internet --file {{path/to/url_list.txt}} Benchmark a list of URLs (without waiting between requests): siege --benchmark --file {{path/to/url_list.txt}} Set the amount of concurrent connections: siege --concurrent={{50}} --file {{path/to/url_list.txt}} Set how long for the siege to run for: siege --time={{30s}} --file {{path/to/url_list.
silicon Create an image of source code. More information: https://github.com/Aloxaf/silicon. Generate an image from a specific source file: silicon {{path/to/source_file}} --output {{path/to/output_image}} Generate an image from a source file with a specific programming language syntax highlighting (e.g. rust, py, js, etc.): silicon {{path/to/source_file}} --output {{path/to/output_image}} --language {{language|extension}} Generate an image from stdin: {{command}} | silicon --output {{path/to/output_image}}
sindresorhus Sindre Sorhus’s personal CLI. More information: https://github.com/sindresorhus/sindresorhus-cli. Start Sindre’s interactive CLI: sindresorhus
singularity Manage Singularity containers and images. More information: https://singularity-docs.readthedocs.io/en/latest/#commands. Download a remote image from Sylabs Cloud: singularity pull --name {{image.sif}} {{library://godlovedc/funny/lolcow:latest}} Rebuild a remote image using the latest Singularity image format: singularity build {{image.sif}} {{docker://godlovedc/lolcow}} Start a container from an image and get a shell inside it: singularity shell {{image.sif}} Start a container from an image and run a command: singularity exec {{image.sif}} {{command}} Start a container from an image and execute the internal runscript: singularity run {{image.
sk Fuzzy finder written in Rust. Similar to fzf. More information: https://github.com/lotabout/skim. Start skim on all files in the specified directory: find {{path/to/directory}} -type f | sk Start skim for running processes: ps aux | sk Start skim with a specified query: sk --query "{{query}}" Select multiple files with Shift + Tab and write to a file: find {{path/to/directory}} -type f | sk --multi > {{path/to/file}}
skaffold A tool that facilitates continuous development for Kubernetes applications. More information: https://skaffold.dev. Build the artifacts: skaffold build -f {{skaffold.yaml}} Build and deploy your app every time your code changes: skaffold dev -f {{skaffold.yaml}} Run a pipeline file: skaffold run -f {{skaffold.yaml}} Run a diagnostic on Skaffold: skaffold diagnose -f {{skaffold.yaml}} Deploy the artifacts: skaffold deploy -f {{skaffold.yaml}}
skate Simple and powerful key-value store. More information: https://github.com/charmbracelet/skate. Store a key and a value on the default database: skate set "{{key}}" "{{value}}" Show your keys saved on the default database: skate list Delete key and value from the default database: skate delete "{{key}}" Create a new key and value in a new database: skate set "{{key}}"@"{{database_name}}" "{{value}}" Show your keys saved in a non default database: skate list @"{{database_name}}"
skicka Manage your Google Drive. More information: https://github.com/google/skicka. Upload a file/folder to Google Drive: skicka upload {{path/to/local}} {{path/to/remote}} Download a file/folder from Google Drive: skicka download {{path/to/remote}} {{path/to/local}} List files: skicka ls {{path/to/folder}} Show amount of space used by children folders: skicka du {{path/to/parent/folder}} Create a folder: skicka mkdir {{path/to/folder}} Delete a file: skicka rm {{path/to/file}}
skopeo Container image management toolbox. Provides various utility commands to manage remote container images. More information: https://github.com/containers/skopeo. Inspect a remote image from a registry: skopeo inspect docker://{{registry_hostname}}/{{image:tag}} List available tags for a remote image: skopeo list-tags docker://{{registry_hostname}}/{{image}} Download an image from a registry: skopeo copy docker://{{registry_hostname}}/{{image:tag}} dir:{{path/to/directory}} Copy an image from one registry to another: skopeo copy docker://{{source_registry}}/{{image:tag}} docker://{{destination_registry}}/{{image:tag}} Delete an image from a registry: skopeo delete docker://{{registry_hostname}}/{{image:tag}} Log in to a registry: skopeo login --username {{username}} {{registry_hostname}}
sl Steam locomotive running through your terminal. More information: https://github.com/mtoyoda/sl. Let a steam locomotive run through your terminal: sl The train burns, people scream: sl -a Let the train fly: sl -F Make the train little: sl -l Let the user exit (CTRL + C): sl -e
slackcat Utility for passing files and command output to Slack. More information: https://github.com/bcicen/slackcat. Post a file to Slack: slackcat --channel {{channel_name}} {{path/to/file}} Post a file to Slack with a custom filename: slackcat --channel {{channel_name}} --filename={{filename}} {{path/to/file}} Pipe command output to Slack as a text snippet: {{command}} | slackcat --channel {{channel_name}} --filename={{snippet_name}} Stream command output to Slack continuously: {{command}} | slackcat --channel {{channel_name}} --stream
sleep Delay for a specified amount of time. More information: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/sleep.html. Delay in seconds: sleep {{seconds}} Execute a specific command after 20 seconds delay: sleep 20 && {{command}}
slimrb Convert Slim files to HTML. More information: https://rdoc.info/gems/slim/frames#slim-command-slimrb. Convert a Slim file to HTML: slimrb {{input.slim}} {{output.html}} Convert a Slim file and output to prettified HTML: slimrb --pretty {{input.slim}} {{output.html}} Convert a Slim file to ERB: slimrb --erb {{input.slim}} {{output.erb}}
smalltalkci Framework for testing Smalltalk projects with GitHub Actions, Travis CI, AppVeyor, GitLab CI, and others. More information: https://github.com/hpi-swa/smalltalkCI. Run tests for a configuration file: smalltalkci {{path/to/.smalltalk.ston}} Run tests for the .smalltalk.ston configuration in the current directory: smalltalkci Debug tests in headful mode (show VM window): smalltalkci --headful Download and prepare a well-known smalltalk image for the tests: smalltalkci --smalltalk {{Squeak64-Trunk}} Specify a custom Smalltalk image and VM: smalltalkci --image {{path/to/Smalltalk.
smartctl Monitor disk health including SMART data. More information: https://www.smartmontools.org. Display SMART health summary: sudo smartctl --health {{/dev/sdX}} Display device information: sudo smartctl --info {{/dev/sdX}} Start a short self-test in the background: sudo smartctl --test short {{/dev/sdX}} Display current/last self-test status and other SMART capabilities: sudo smartctl --capabilities {{/dev/sdX}} Display exhaustive SMART data: sudo smartctl --all {{/dev/sdX}}
smbmap Allow users to enumerate samba share drives across an entire domain. More information: https://github.com/ShawnDEvans/smbmap. Enumerate hosts with NULL sessions enabled and open shares: smbmap --host-file {{path/to/file}} Enumerate hosts and check SMB file permissions: smbmap --host-file {{path/to/file}} -u {{username}} -p {{password}} -q Connect to an ip or hostname through smb using a username and password: smbmap -u {{username}} -p {{password}} -d {{domain}} -H {{ip_or_hostname}} Locate and download files [R]ecursively up to N levels depth, searching for filename pattern (regex), and excluding certain shares: smbmap --host-file {{path/to/file}} -u {{username}} -p {{password}} -q -R --depth {{number}} --exclude {{sharename}} -A {{filepattern}}
sn Mono StrongName utility for signing and verifying IL assemblies. More information: https://manned.org/sn. Generate a new StrongNaming key: sn -k {{path/to/key.snk}} Re-sign an assembly with the specified private key: sn -R {{path/to/assembly.dll}} {{path/to/key_pair.snk}} Show the public key of the private key that was used to sign an assembly: sn -T {{path/to/assembly.exe}} Extract the public key to a file: sn -e {{path/to/assembly.dll}} {{path/to/output.pub}}
snakefmt Format Snakemake files. More information: https://github.com/snakemake/snakefmt. Format a specific Snakefile: snakefmt {{path/to/snakefile}} Format all Snakefiles recursively in a specific directory: snakefmt {{path/to/directory}} Format a file using a specific configuration file: snakefmt --config {{path/to/config.toml}} {{path/to/snakefile}} Format a file using a specific maximum line length: snakefmt --line-length {{100}} {{path/to/snakefile}} Display the changes that would be performed without performing them (dry-run): snakefmt --diff {{path/to/snakefile}}
snort Open-source network intrusion detection system. More information: https://www.snort.org/#documents. Capture packets with verbose output: sudo snort -v -i {{interface}} Capture packets and dump application layer data with verbose output: sudo snort -vd -i {{interface}} Capture packets and display link layer packet headers with verbose output: sudo snort -ve -i {{interface}} Capture packets and save them in the specified directory: sudo snort -i {{interface}} -l {{path/to/directory}} Capture packets according to rules and save offending packets along with alerts: sudo snort -i {{interface}} -c {{path/to/rules.
snowsql SnowSQL command-line client for Snowflake’s Data Cloud. More information: https://docs.snowflake.com/en/user-guide/snowsql.html. Connect to a specific instance at https://account.snowflakecomputing.com (password can be provided in prompt or configuration file): snowsql --accountname {{account}} --username {{username}} --dbname {{database}} --schemaname {{schema}} Connect to an instance specified by a specific configuration file (defaults to ~/.snowsql/config): snowsql --config {{path/to/configuration_file}} Connect to the default instance using a token for multi-factor authentication: snowsql --mfa-passcode {{token}} Execute a single SQL query or SnowSQL command on the default connection (useful in shell scripts): snowsql --query '{{query}}'
snyk Find vulnerabilities in your code and remediate risks. More information: https://snyk.io. Log in to your Snyk account: snyk auth Test your code for any known vulnerabilities: snyk test Test a local Docker image for any known vulnerabilities: snyk test --docker {{docker_image}} Record the state of dependencies and any vulnerabilities on snyk.io: snyk monitor Auto patch and ignore vulnerabilities: snyk wizard
socat Multipurpose relay (SOcket CAT). More information: http://www.dest-unreach.org/socat/. Listen to a port, wait for an incoming connection and transfer data to STDIO: socat - TCP-LISTEN:8080,fork Create a connection to a host and port, transfer data in STDIO to connected host: socat - TCP4:www.example.com:80 Forward incoming data of a local port to another host and port: socat TCP-LISTEN:80,fork TCP4:www.example.com:80
sockstat List open Internet or UNIX domain sockets. More information: https://www.freebsd.org/cgi/man.cgi?query=sockstat&sektion=1. View which users/processes are listening to which ports: sockstat -l
solcjs A set of JavaScript bindings for the Solidity compiler. More information: https://github.com/ethereum/solc-js. Compile a specific contract to hex: solcjs --bin {{path/to/file.sol}} Compile the ABI of a specific contract: solcjs --abi {{path/to/file.sol}} Specify a base path to resolve imports from: solcjs --bin --base-path {{path/to/directory}} {{path/to/file.sol}} Specify one or more paths to include containing external code: solcjs --bin --include-path {{path/to/directory}} {{path/to/file.sol}} Optimise the generated bytecode: solcjs --bin --optimize {{path/to/file.sol}}
solo Interact with Solo hardware security keys. More information: https://github.com/solokeys/solo-python. List connected Solos: solo ls Update the currently connected Solo’s firmware to the latest version: solo key update Blink the LED of a specific Solo: solo key wink --serial {{serial_number}} Generate random bytes using the currently connected Solo’s secure random number generator: solo key rng raw Monitor the serial output of a Solo: solo monitor {{path/to/serial_port}}
sonar-scanner SonarScanner is a generic scanner for SonarQube projects that do not use build tools such as Maven, Gradle, or Ant. More information: https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/. Scan a project with configuration file in your project’s root directory named sonar-project.properties: sonar-scanner Scan a project using configuration file other than sonar-project.properties: sonar-scanner -D{{project.settings=myproject.properties}} Print help information: sonar-scanner -h Print debugging information: sonar-scanner -X
sops SOPS: Secrets OPerationS. Tool for managing secrets. More information: https://github.com/mozilla/sops. Encrypt a file: sops -e {{path/to/myfile.json}} > {{path/to/myfile.enc.json}} Decrypt a file to stdout: sops -d {{path/to/myfile.enc.json}} Rotate data keys for a sops file: sops -r {{path/to/myfile.enc.yaml}} Change the extension of the file once encrypted: sops -d --input-type json {{path/to/myfile.enc.json}} Extract keys by naming them, and array elements by numbering them: sops -d --extract '["an_array"][1]' {{path/to/myfile.enc.json}} Show the difference between two sops files: diff <(sops -d {{path/to/secret1.
sort Sort lines of text files. More information: https://www.gnu.org/software/coreutils/sort. Sort a file in ascending order: sort {{path/to/file}} Sort a file in descending order: sort --reverse {{path/to/file}} Sort a file in case-insensitive way: sort --ignore-case {{path/to/file}} Sort a file using numeric rather than alphabetic order: sort --numeric-sort {{path/to/file}} Sort /etc/passwd by the 3rd field of each line numerically, using “:” as a field separator: sort --field-separator={{:}} --key={{3n}} {{/etc/passwd}} Sort a file preserving only unique lines: sort --unique {{path/to/file}}
soupault Soupault is a static website generator based on HTML element tree rewriting. It can also be used as an HTML post-processor or metadata extractor. More information: https://soupault.app. Initialize a minimal website project in the current working directory: soupault --init Build a website: soupault Override default config file and directory locations: soupault --config {{config_path}} --site-dir {{input_dir}} --build-dir {{output_dir}} Extract metadata into a JSON file without generating pages: soupault --index-only --dump-index-json {{path/to/file.
source Execute commands from a file in the current shell. More information: https://manned.org/source. Evaluate contents of a given file: source {{path/to/file}} Evaluate contents of a given file (alternatively replacing source with .): . {{path/to/file}}
sox Sound eXchange: play, record and convert audio files. Audio formats are identified by the extension. More information: http://sox.sourceforge.net. Merge two audio files into one: sox -m {{input_audiofile1}} {{input_audiofile2}} {{output_audiofile}} Trim an audio file to the specified times: sox {{input_audiofile}} {{output_audiofile}} trim {{start}} {{end}} Normalize an audio file (adjust volume to the maximum peak level, without clipping): sox --norm {{input_audiofile}} {{output_audiofile}} Reverse and save an audio file: sox {{input_audiofile}} {{output_audiofile}} reverse
spark The Laravel Spark command-line tool. More information: https://spark.laravel.com. Register your API token: spark register {{token}} Display the currently registered API token: spark token Create a new Spark project: spark new {{project_name}} Create a new Spark project with Braintree stubs: spark new {{project_name}} --braintree Create a new Spark project with team-based billing stubs: spark new {{project_name}} --team-billing
spatial A set of commands for managing and developing SpatialOS projects. More information: https://ims.improbable.io/products/spatialos. Run this when you use a project for the first time: spatial worker build Build workers for local deployment on Unity on macOS: spatial worker build --target=development --target=Osx Build workers for local deployment on Unreal on Windows: spatial worker build --target=local --target=Windows Deploy locally: spatial local launch {{launch_config}} --snapshot={{snapshot_file}} Launch a local worker to connect to your local deployment: spatial local worker launch {{worker_type}} {{launch_config}}
spectacle KDE’s screenshot utility. More information: https://manned.org/spectacle. Capture a screenshot of the entire desktop: spectacle Capture a screenshot of the active window: spectacle --activewindow Capture a screenshot of a specific region: spectacle --region
speed-test Test your internet connection speed and ping using https://speedtest.net. More information: https://github.com/sindresorhus/speed-test. Test your internet connection and ping speed: speed-test Output the results as JSON: speed-test --json Output the results in megabytes per second (MBps): speed-test --bytes Output more detailed information: speed-test --verbose
speedcrunch A high-precision scientific calculator. More information: https://www.speedcrunch.org. Start SpeedCrunch: speedcrunch Copy the result of the most recent calculation: Ctrl + R Open the formula book: Ctrl + 1 Clear the calculator of recent calculations: Ctrl + N Wrap highlighted in parentheses (defaults to wrapping all if nothing selected): Ctrl + P Load a speedcrunch session: Ctrl + L Save a speedcrunch session: Ctrl + S Toggle keypad: Ctrl + K
speedtest Official command-line interface for testing internet bandwidth using https://speedtest.net. Note: some platforms link speedtest to speedtest-cli. If some of the examples in this page don’t work, see speedtest-cli. More information: https://www.speedtest.net/apps/cli. Run a speed test: speedtest Run a speed test and specify the unit of the output: speedtest --unit={{auto-decimal-bits|auto-decimal-bytes|auto-binary-bits|auto-binary-bytes}} Run a speed test and specify the output format: speedtest --format={{human-readable|csv|tsv|json|jsonl|json-pretty}} Run a speed test and specify the number of decimal points to use (0 to 8, defaults to 2): speedtest --precision={{precision}}
speedtest-cli Test internet bandwidth using https://speedtest.net. See also speedtest for the official CLI. More information: https://github.com/sivel/speedtest-cli. Run a speed test: speedtest-cli Run a speed test and display values in bytes, instead of bits: speedtest-cli --bytes Run a speed test using HTTPS, instead of HTTP: speedtest-cli --secure Run a speed test without performing download tests: speedtest-cli --no-download Run a speed test and generate an image of the results: speedtest-cli --share List all speedtest.
spfquery Query Sender Policy Framework records to validate e-mail senders. More information: https://www.libspf2.org/. Check if an IP address is allowed to send an e-mail from the specified e-mail address: spfquery -ip {{8.8.8.8}} -sender {{sender@example.com}} Turn on debugging output: spfquery -ip {{8.8.8.8}} -sender {{sender@example.com}} --debug
sphinx-build Sphinx documentation generator. More information: http://www.sphinx-doc.org/en/master/man/sphinx-build.html. Build documentation: sphinx-build -b {{html|epub|text|latex|man|...}} {{path/to/source_dir}} {{path/to/build_dir}} Build documentations intended for readthedocs.io (requires the sphinx-rtd-theme pip package): sphinx-build -b {{html}} {{path/to/docs_dir}} {{path/to/build_dir}}
spicetify Customize the Spotify client UI and functionality. More information: https://spicetify.app. Generate a configuration file on very first run and display help: spicetify Backup and preprocess Spotify application files: spicetify backup Print all configuration fields and values: spicetify config Change the value of a configuration field: spicetify config {{field}} {{value}} Apply the customization changes to Spotify: spicetify apply Restore Spotify to its original state: spicetify restore
spike A fully featured static website generator written in JavaScript. More information: https://spike.js.org. Create a new project using the default template: spike new {{project_name}} Compile your project, watch for changes, and auto-reload the browser: spike watch Compile your project once to the “public” directory: spike compile Remove the output directory: spike clean
split Split a file into pieces. More information: https://www.gnu.org/software/coreutils/split. Split a file, each split having 10 lines (except the last split): split -l {{10}} {{path/to/file}} Split a file into 5 files. File is split such that each split has same size (except the last split): split -n {{5}} {{path/to/file}} Split a file with 512 bytes in each split (except the last split; use 512k for kilobytes and 512m for megabytes): split -b {{512}} {{path/to/file}}
sponge Soak up the input before writing the output file. More information: https://manned.org/sponge. Append file content to the source file: cat {{path/to/file}} | sponge -a {{path/to/file}} Remove all lines starting with # in a file: grep -v '^{{#}}' {{path/to/file}} | sponge {{path/to/file}}
spotdl Download Spotify playlists and songs along with metadata. More information: https://github.com/spotDL/spotify-downloader. Download songs from the provided URLs and embed metadata: spotdl {{open.spotify.com/playlist/playlistId open.spotify.com/track/trackId ...}} Start a web interface to download individual songs: spotdl web Save only the metadata without downloading anything: spotdl save {{open.spotify.com/playlist/playlistId ...}} --save-file {{path/to/save_file.spotdl}}
sqlite-utils Command-line tool used to manipulate SQLite databases in a number of different ways. More information: https://sqlite-utils.datasette.io/en/stable/cli.html. Create a database: sqlite-utils create-database {{path/to/database.db}} Create a table: sqlite-utils create-table {{path/to/database.db}} {{table_name}} {{id integer name text height float photo blob --pk id}} List tables: sqlite-utils tables {{path/to/database.db}} Upsert a record: {{echo '[ {"id": 1, "name": "Linus Torvalds"}, {"id": 2, "name": "Steve Wozniak"}, {"id": 3, "name": "Tony Hoare"} ]'}} | sqlite-utils upsert {{path/to/database.db}} {{table_name}} - {{--pk id}}
sqlite3 The command-line interface to SQLite 3, which is a self-contained file-based embedded SQL engine. More information: https://sqlite.org. Start an interactive shell with a new database: sqlite3 Open an interactive shell against an existing database: sqlite3 {{path/to/database.sqlite3}} Execute an SQL statement against a database and then exit: sqlite3 {{path/to/database.sqlite3}} '{{SELECT * FROM some_table;}}'
sqlmap Detect and exploit SQL injection flaws. More information: https://sqlmap.org. Run sqlmap against a single target URL: python sqlmap.py -u "{{http://www.target.com/vuln.php?id=1}}" Send data in a POST request (--data implies POST request): python sqlmap.py -u "{{http://www.target.com/vuln.php}}" --data="{{id=1}}" Change the parameter delimiter (& is the default): python sqlmap.py -u "{{http://www.target.com/vuln.php}}" --data="{{query=foobar;id=1}}" --param-del="{{;}}" Select a random User-Agent from ./txt/user-agents.txt and use it: python sqlmap.py -u "{{http://www.target.com/vuln.php}}" --random-agent Provide user credentials for HTTP protocol authentication: python sqlmap.
sqsc A command-line AWS Simple Queue Service client. More information: https://github.com/yongfei25/sqsc. List all queues: sqsc lq {{queue_prefix}} List all messages in a queue: sqsc ls {{queue_name}} Copy all messages from one queue to another: sqsc cp {{source_queue}} {{destination_queue}} Move all messages from one queue to another: sqsc mv {{source_queue}} {{destination_queue}} Describe a queue: sqsc describe {{queue_name}} Query a queue with SQL syntax: sqsc query "SELECT body FROM {{queue_name}} WHERE body LIKE '%user%'"
srm Securely remove files or directories. Overwrites the existing data one or multiple times. Drop in replacement for rm. More information: http://srm.sourceforge.net/srm.html. Remove a file after a single-pass overwriting with random data: srm -s {{path/to/file}} Remove a file after seven passes of overwriting with random data: srm -m {{path/to/file}} Recursively remove a directory and its contents overwriting each file with a single-pass of random data: srm -r -s {{path/to/directory}} Prompt before every removal: srm -i {{\*}}
ss-local Run a Shadowsocks client as a SOCKS5 proxy. More information: https://github.com/shadowsocks/shadowsocks-libev/blob/master/doc/ss-local.asciidoc. Run a Shadowsocks proxy by specifying the host, server port, local port, password, and encryption method: ss-local -s {{host}} -p {{server_port}} -l {{local port}} -k {{password}} -m {{encrypt_method}} Run a Shadowsocks proxy by specifying the config file: ss-local -c {{path/to/config/file.json}} Use a plugin to run the proxy client: ss-local --plugin {{plugin_name}} --plugin-opts {{plugin_options}} Enable TCP fast open: ss-local --fast-open
ssh Secure Shell is a protocol used to securely log onto remote systems. It can be used for logging or executing commands on a remote server. More information: https://man.openbsd.org/ssh. Connect to a remote server: ssh {{username}}@{{remote_host}} Connect to a remote server with a specific identity (private key): ssh -i {{path/to/key_file}} {{username}}@{{remote_host}} Connect to a remote server using a specific port: ssh {{username}}@{{remote_host}} -p {{2222}} Run a command on a remote server with a [t]ty allocation allowing interaction with the remote command: ssh {{username}}@{{remote_host}} -t {{command}} {{command_arguments}}
ssh-add Manage loaded ssh keys in the ssh-agent. Ensure that ssh-agent is up and running for the keys to be loaded in it. More information: https://man.openbsd.org/ssh-add. Add the default ssh keys in ~/.ssh to the ssh-agent: ssh-add Add a specific key to the ssh-agent: ssh-add {{path/to/private_key}} List fingerprints of currently loaded keys: ssh-add -l Delete a key from the ssh-agent: ssh-add -d {{path/to/private_key}} Delete all currently loaded keys from the ssh-agent: ssh-add -D
ssh-agent Spawn an SSH Agent process. An SSH Agent holds SSH keys decrypted in memory until removed or the process is killed. See also ssh-add, which can add and manage keys held by an SSH Agent. More information: https://man.openbsd.org/ssh-agent. Start an SSH Agent for the current shell: eval $(ssh-agent) Kill the currently running agent: ssh-agent -k
ssh-copy-id Install your public key in a remote machine’s authorized_keys. More information: https://manned.org/ssh-copy-id. Copy your keys to the remote machine: ssh-copy-id {{username@remote_host}} Copy the given public key to the remote: ssh-copy-id -i {{path/to/certificate}} {{username}}@{{remote_host}} Copy the given public key to the remote with specific port: ssh-copy-id -i {{path/to/certificate}} -p {{port}} {{username}}@{{remote_host}}
ssh-keygen Generate ssh keys used for authentication, password-less logins, and other things. More information: https://man.openbsd.org/ssh-keygen. Generate a key interactively: ssh-keygen Generate an ed25519 key with 32 key derivation function rounds and save the key to a specific file: ssh-keygen -t {{ed25519}} -a {{32}} -f {{~/.ssh/filename}} Generate an RSA 4096-bit key with email as a comment: ssh-keygen -t {{rsa}} -b {{4096}} -C "{{comment|email}}" Remove the keys of a host from the known_hosts file (useful when a known host has a new key): ssh-keygen -R {{remote_host}}
ssh-keyscan Get the public ssh keys of remote hosts. More information: https://man.openbsd.org/ssh-keyscan. Retrieve all public ssh keys of a remote host: ssh-keyscan {{host}} Retrieve all public ssh keys of a remote host listening on a specific port: ssh-keyscan -p {{port}} {{host}} Retrieve certain types of public ssh keys of a remote host: ssh-keyscan -t {{rsa,dsa,ecdsa,ed25519}} {{host}} Manually update the ssh known_hosts file with the fingerprint of a given host: ssh-keyscan -H {{host}} >> ~/.
sshd Secure Shell Daemon - allows remote machines to securely log in to the current machine. Remote machines can execute commands as it is executed at this machine. More information: https://man.openbsd.org/sshd. Start daemon in the background: sshd Run sshd in the foreground: sshd -D Run with verbose output (for debugging): sshd -D -d Run on a specific port: sshd -p {{port}}
sshfs Filesystem client based on SSH. More information: https://github.com/libfuse/sshfs. Mount remote directory: sshfs {{username}}@{{remote_host}}:{{remote_directory}} {{mountpoint}} Unmount remote directory: umount {{mountpoint}} Mount remote directory from server with specific port: sshfs {{username}}@{{remote_host}}:{{remote_directory}} -p {{2222}} Use compression: sshfs {{username}}@{{remote_host}}:{{remote_directory}} -C Follow symbolic links: sshfs -o follow_symlinks {{username}}@{{remote_host}}:{{remote_directory}} {{mountpoint}}
sshpass An ssh password provider. It works by creating a TTY, feeding the password into it, and then redirecting stdin to the ssh session. More information: https://manned.org/sshpass. Connect to a remote server using a password supplied on a file descriptor (in this case, stdin): sshpass -d {{0}} ssh {{user}}@{{hostname}} Connect to a remote server with the password supplied as an option, and automatically accept unknown ssh keys: sshpass -p {{password}} ssh -o StrictHostKeyChecking=no {{user}}@{{hostname}}
sshuttle Transparent proxy server that tunnels traffic over an SSH connection. Doesn’t require root or any special setup on the remote SSH server, though root access on the local machine is prompted for. More information: https://manned.org/sshuttle. Forward all IPv4 TCP traffic via a remote SSH server: sshuttle --remote={{username}}@{{sshserver}} {{0.0.0.0/0}} Also forward all DNS traffic to the server’s default DNS resolver: sshuttle --dns --remote={{username}}@{{sshserver}} {{0.0.0.0/0}} Forward all traffic except that which is bound for a specific subnet: sshuttle --remote={{username}}@{{sshserver}} {{0.
sslscan Check SSL/TLS protocols and ciphers supported by a server. More information: https://github.com/rbsec/sslscan. Test a server on port 443: sslscan {{example.com}} Test a specified port: sslscan {{example.com}}:{{465}} Show certificate information: testssl --show-certificate {{example.com}}
st-flash Flash binary files to STM32 ARM Cortex microcontrollers. More information: https://github.com/texane/stlink. Read 4096 bytes from the device starting from 0x8000000: st-flash read {{firmware}}.bin {{0x8000000}} {{4096}} Write firmware to device starting from 0x8000000: st-flash write {{firmware}}.bin {{0x8000000}} Erase firmware from device: st-flash erase
st-info Provides information about connected STLink and STM32 devices. More information: https://github.com/texane/stlink. Display amount of program memory available: st-info --flash Display amount of SRAM memory available: st-info --sram Display summarized information of the device: st-info --probe
st-util Run GDB (GNU Debugger) server to interact with STM32 ARM Cortex microcontoller. More information: https://github.com/texane/stlink. Run GDB server on port 4500: st-util -p {{4500}} Connect to GDB server: (gdb) target extended-remote {{localhost}}:{{4500}} Write firmware to device: (gdb) load {{firmware.elf}}
stack Tool for managing Haskell projects. More information: https://github.com/commercialhaskell/stack. Create a new package: stack new {{package}} {{template}} Compile a package: stack build Run tests inside a package: stack test Compile a project and re-compile every time a file changes: stack build --file-watch Compile a project and execute a command after compilation: stack build --exec "{{command}}" Run a program and pass an argument to it: stack exec {{program}} -- {{argument}}
standard The JavaScript Standard Style tool for linting and fixing JavaScript code. More information: https://standardjs.com. Lint all JavaScript source files in the current directory: standard Lint specific JavaScript file(s): standard {{path/to/file1 path/to/file2 ...}} Apply automatic fixes during linting: standard --fix Declare any available global variables: standard --global {{variable}} Use a custom ESLint plugin when linting: standard --plugin {{plugin}} Use a custom JS parser when linting: standard --parser {{parser}} Use a custom ESLint environment when linting: standard --env {{environment}}
standard-version Automate versioning and changelog generation, with SemVer and Conventional Commits. More information: https://github.com/conventional-changelog/standard-version. Update the changelog file and tag a release: standard-version Tag a release without bumping the version: standard-version --first-release Update the changelog and tag an alpha release: standard-version --prerelease alpha Update the changelog and tag a specific release type: standard-version --release-as {{major|minor|patch}} Tag a release, preventing hooks from being verified during the commit step: standard-version --no-verify Tag a release committing all staged changes, not just files affected by standard-version: standard-version --commit-all
starship The minimal, blazing-fast, and infinitely customizable prompt for any shell. Some subcommands such as starship init have their own usage documentation. More information: https://starship.rs. Print the starship integration code for the specified shell: starship init {{bash|elvish|fish|ion|powershell|tcsh|zsh}} Explain each part of the current prompt and show the time taken to render them: starship explain Print the computed starship configuration (use --default to print default configuration instead): starship print-config List supported modules: starship module --list
starship init Print shell integration code for starship. More information: https://starship.rs. Display the subcommand help: starship init --help Print the starship integration code for the specified shell: starship init {{bash|elvish|fish|ion|powershell|tcsh|zsh}} Append the starship integration code to ~/.bashrc: starship init {{bash}} >> {{~/.bashrc}} Append the starship integration code to ~/.zshrc: starship init {{zsh}} >> {{~/.zshrc}}
stat Display file and filesystem information. More information: https://www.gnu.org/software/coreutils/manual/html_node/stat-invocation.html. Display properties about a specific file such as size, permissions, creation and access dates among others: stat {{path/to/file}} Display properties about a specific file such as size, permissions, creation and access dates among others without labels: stat --terse {{path/to/file}} Display information about the filesystem where a specific file is located: stat --file-system {{path/to/file}} Show only octal file permissions: stat --format="%a %n" {{path/to/file}}
stdbuf Run a command with modified buffering operations for its standard streams. More information: https://www.gnu.org/software/coreutils/stdbuf. Change stdin buffer size to 512 KiB: stdbuf --input={{512K}} {{command}} Change stdout buffer to line-buffered: stdbuf --output={{L}} {{command}} Change stderr buffer to unbuffered: stdbuf --error={{0}} {{command}}
steam Video game platform by Valve. More information: https://developer.valvesoftware.com/wiki/Command_Line_Options. Launch Steam, printing debug messages to stdout: steam Launch Steam and enable its in-app debug console tab: steam -console Enable and open the Steam console tab in a running Steam instance: steam steam://open/console Log into Steam with the specified credentials: steam -login {{username}} {{password}} Launch Steam in Big Picture Mode: steam -tenfoot Exit Steam: steam -shutdown
steamcmd A command-line version of the Steam client. More information: https://manned.org/steamcmd. Install or update an application anonymously: steamcmd +login {{anonymous}} +app_update {{appid}} +quit Install or update an application using the specified credentials: steamcmd +login {{username}} +app_update {{appid}} +quit Install an application for a specific platform: steamcmd +@sSteamCmdForcePlatformType {{windows}} +login {{anonymous}} +app_update {{appid}} validate +quit
stern Tail multiple pods and containers from Kubernetes. More information: https://github.com/wercker/stern/. Tail all pods within a current namespace: stern . Tail all pods with a specific status: stern . --container-state {{running|waiting|terminated}} Tail all pods that matches a given regular expression: stern {{pod_query}} Tail matched pods from all namespaces: stern {{pod_query}} --all-namespaces Tail matched pods from 15 minutes ago: stern {{pod_query}} --since {{15m}} Tail matched pods with a specific label: stern {{pod_query}} --selector {{release=canary}}
stl2gts Convert STL files into the GTS (GNU triangulated surface library) file format. More information: https://manned.org/stl2gts. Convert an STL file to a GTS file: stl2gts < {{path/to/file.stl}} > {{path/to/file.gts}} Convert an STL file to a GTS file and revert face normals: stl2gts --revert < {{path/to/file.stl}} > {{path/to/file.gts}} Convert an STL file to a GTS file and do not merge vertices: stl2gts --nomerge < {{path/to/file.stl}} > {{path/to/file.gts}} Convert an STL file to a GTS file and display surface statistics: stl2gts --verbose < {{path/to/file.
stolonctl CLI for Stolon, a cloud native PostgreSQL manager for PostgreSQL high availability. More information: https://github.com/sorintlab/stolon. Get cluster status: stolonctl --cluster-name {{cluster_name}} --store-backend {{store_backend}} --store-endpoints {{store_endpoints}} status Get cluster data: stolonctl --cluster-name {{cluster_name}} --store-backend {{store_backend}} --store-endpoints {{store_endpoints}} clusterdata Get cluster specification: stolonctl --cluster-name {{cluster_name}} --store-backend {{store_backend}} --store-endpoints {{store_endpoints}} spec Update cluster specification with a patch in JSON format: stolonctl --cluster-name {{cluster_name}} --store-backend {{store_backend}} --store-endpoints {{store_endpoints}} update --patch '{{cluster_spec}}'
Stormlock Centralized locking system. More information: https://github.com/tmccombs/stormlock. Acquire a lease for resource: stormlock acquire {{resource}} Release the given lease for the given resource: stormlock release {{resource}} {{lease_id}} Show information on the current lease for a resource, if any: stormlock current {{resource}} Test if a lease for given resource is currently active: stormlock is-held {{resource}} {{lease_id}}
stow Symlink manager. Often used to manage dotfiles. More information: https://www.gnu.org/software/stow. Symlink all files recursively to a given directory: stow --target={{path/to/target_directory}} {{file1 directory1 file2 directory2}} Delete symlinks recursively from a given directory: stow --delete --target={{path/to/target_directory}} {{file1 directory1 file2 directory2}} Simulate to see what the result would be like: stow --simulate --target={{path/to/target_directory}} {{file1 directory1 file2 directory2}} Delete and resymlink: stow --restow --target={{path/to/target_directory}} {{file1 directory1 file2 directory2}} Exclude files matching a regular expression: stow --ignore={{regular_expression}} --target={{path/to/target_directory}} {{file1 directory1 file2 directory2}}
streamlink Extracts streams from various services and pipes them into a video player of choice. More information: https://streamlink.github.io. Attempt to extract streams from the URL specified, and if it’s successful, print out a list of available streams to choose from: streamlink {{example.com/stream}} Open a stream with the specified quality: streamlink {{example.com/stream}} {{720p60}} Select the highest or lowest available quality: streamlink {{example.com/stream}} {{best|worst}} Specify which player to use to feed stream data to (VLC is used by default if found): streamlink --player={{mpv}} {{example.
stressapptest Userspace memory and IO test. More information: https://github.com/stressapptest/stressapptest. Test the given amount of memory (in Megabytes): stressapptest -M {{memory}} Test memory as well as I/O for the given file: stressapptest -M {{memory}} -f {{path/to/file}} Test specifying the verbosity level, where 0=lowest, 20=highest, 8=default: stressapptest -M {{memory}} -v {{level}}
strings Find printable strings in an object file or binary. More information: https://manned.org/strings. Print all strings in a binary: strings {{path/to/file}} Limit results to strings at least length characters long: strings -n {{length}} {{path/to/file}} Prefix each result with its offset within the file: strings -t d {{path/to/file}} Prefix each result with its offset within the file in hexadecimal: strings -t x {{path/to/file}}
strip-nondeterminism A tool to remove non-deterministic information (e.g. timestamps) from files. More information: https://salsa.debian.org/reproducible-builds/strip-nondeterminism. Strip nondeterministic information from a file: strip-nondeterminism {{path/to/file}} Strip nondeterministic information from a file manually specifying the filetype: strip-nondeterminism --type {{filetype}} {{path/to/file}} Strip nondeterministic information from a file; instead of removing timestamps set them to the specified UNIX timestamp: strip-nondeterminism --timestamp {{unix_timestamp}} {{path/to/file}}
stripe Interact with a Stripe account. More information: https://github.com/stripe/stripe-cli. Follow the logs of activity on the account: stripe logs tail Listen for events, filtering on events with the name charge.succeeded and forwarding them to localhost:3000/events: stripe listen --events="{{charge.succeeded}}" --forward-to="{{localhost:3000/events}}" Send a test webhook event: stripe trigger {{charge.succeeded}} Create a customer: stripe customers create --email="{{test@example.com}}" --name="{{Jenny Rosen}}" Print to JSON: stripe listen --print-json
stty Set options for a terminal device interface. More information: https://www.gnu.org/software/coreutils/stty. Display all settings for the current terminal: stty --all Set the number of rows or columns: stty {{rows|cols}} {{count}} Get the actual transfer speed of a device: stty --file {{path/to/device_file}} speed Reset all modes to reasonable values for the current terminal: stty sane
stun Classic STUN client. More information: https://manned.org/stun.1. Make a STUN request: stun {{stun.1und1.de}} Make a STUN request and specify the source port: stun {{stun.1und1.de}} -p {{4302}}
su Switch shell to another user. More information: https://manned.org/su. Switch to superuser (requires the root password): su Switch to a given user (requires the user’s password): su {{username}} Switch to a given user and simulate a full login shell: su - {{username}} Execute a command as another user: su - {{username}} -c "{{command}}"
subfinder A subdomain discovery tool that discovers valid subdomains for websites. Designed as a passive framework to be useful for bug bounties and safe for penetration testing. More information: https://github.com/subfinder/subfinder. Find subdomains for a specific domain: subfinder -d {{example.com}} Show only the subdomains found: subfinder --silent -d {{example.com}} Use a brute-force attack to find subdomains: subfinder -d {{example.com}} -b Remove wildcard subdomains: subfinder -nW -d {{example.com}} Use a given comma-separated list of resolvers: subfinder -r {{8.
subl Sublime Text editor. More information: https://www.sublimetext.com. Open the current directory in Sublime Text: subl {{.}} Open a file or directory in Sublime Text: subl {{path/to/file_or_directory}} Open a file and jump to a specific line number: subl {{path/to/file}}:{{line_number}} Open a file or directory in the currently open window: subl -a {{path/to/file}} Open a file or directory in a new window: subl -n {{path/to/file}}
subliminal Python-based subtitle downloader. More information: https://github.com/Diaoul/subliminal. Download English subtitles for a video: subliminal download -l {{en}} {{video.ext}}
sublist3r Fast subdomains enumeration tool for penetration testers. More information: https://github.com/aboul3la/Sublist3r. Find subdomains for a domain: sublist3r --domain {{domain_name}} Find subdomains for a domain, also enabling brute force search: sublist3r --domain {{domain_name}} --bruteforce Save the found subdomains to a text file: sublist3r --domain {{domain_name}} --output {{path/to/output_file}} Output all available options: sublist3r --help
sudo Executes a single command as the superuser or another user. More information: https://www.sudo.ws/sudo.html. Run a command as the superuser: sudo {{less /var/log/syslog}} Edit a file as the superuser with your default editor: sudo --edit {{/etc/fstab}} Run a command as another user and/or group: sudo --user={{user}} --group={{group}} {{id -a}} Repeat the last command prefixed with sudo (only in bash, zsh, etc.): sudo !! Launch the default shell with superuser privileges and run login-specific files (.
sum Compute checksums and the number of blocks for a file. A predecessor to the more modern cksum. More information: https://www.gnu.org/software/coreutils/sum. Compute a checksum with BSD-compatible algorithm and 1024-byte blocks: sum {{path/to/file}} Compute a checksum with System V-compatible algorithm and 512-byte blocks: sum --sysv {{path/to/file}}
sup A tool for managing an RSS feed contained in the current directory. See also: lb. More information: https://github.com/LukeSmithxyz/lb. Add an article to the RSS feed: sup {{path/to/file.html}}
supervisorctl Supervisor is a client/server system that allows its users to control a number of processes on UNIX-like operating systems. Supervisorctl is the command-line client piece of the supervisor which provides a shell-like interface. More information: http://supervisord.org. Show the status of a process (or all processes if process_name is not specified): supervisorctl status {{process_name}} Start/stop/restart a process: supervisorctl {{start|stop|restart}} {{process_name}} Start/stop/restart all processes in a group: supervisorctl {{start|stop|restart}} {{group_name}}:* Show last 100 bytes of process stderr: supervisorctl tail -100 {{process_name}} stderr
supervisord Supervisor is a client/server system for controlling some processes on UNIX-like operating systems. Supervisord is the server part of supervisor; it is primarily managed via a configuration file. More information: http://supervisord.org. Start supervisord with specified configuration file: supervisord -c {{path/to/file}} Run supervisord in the foreground: supervisord -n
surfraw Query a variety of web search engines. Consists of a collection of elvi, each of which knows how to search a specific website. More information: http://surfraw.org. Display the list of supported website search scripts (elvi): surfraw -elvi Open the elvi’s results page for a specific search in the browser: surfraw {{elvi}} "{{search_terms}}" Display an elvi description and its specific options: surfraw {{elvi}} -local-help Search using an elvi with specific options and open the results page in the browser: surfraw {{elvi}} {{elvi_options}} "{{search_terms}}"
surge Simple web publishing. More information: https://surge.sh. Upload a new site to surge.sh: surge {{path/to/my_project}} Deploy site to custom domain (note that the DNS records must point to the surge.sh subdomain): surge {{path/to/my_project}} {{my_custom_domain.com}} List your surge projects: surge list Remove a project: surge teardown {{my_custom_domain.com}}
sv Control a running runsv service. More information: https://manpages.ubuntu.com/manpages/latest/man8/sv.8.html. Start a service: sudo sv up {{path/to/service}} Stop a service: sudo sv down {{path/to/service}} Get service status: sudo sv status {{path/to/service}} Reload a service: sudo sv reload {{path/to/service}} Start a service, but only if it’s not running and don’t restart it if it stops: sudo sv once {{path/to/service}}
svgcleaner SVG optimizing utility. More information: https://github.com/RazrFalcon/svgcleaner. Optimize an SVG: svgcleaner {{input.svg}} {{output.svg}} Optimize an SVG multiple times: svgcleaner --multipass {{input.svg}} {{output.svg}}
svgo SVG Optimizer: a Node.js-based tool for optimizing Scalable Vector Graphics files. It applies a series of transformation rules (plugins), which can be toggled individually. More information: https://github.com/svg/svgo. Optimize a file using the default plugins (overwrites the original file): svgo {{test.svg}} Optimize a file and save the result to another file: svgo {{test.svg}} -o {{test.min.svg}} Optimize all SVG files within a directory (overwrites the original files): svgo -f {{path/to/directory/with/svg/files}} Optimize all SVG files within a directory and save the resulting files to another directory: svgo -f {{path/to/input/directory}} -o {{path/to/output/directory}}
svgr Transform SVGs into React components. More information: https://react-svgr.com. Transform a SVG file into a React component to stdout: svgr -- {{path/to/file.svg}} Transform a SVG file into a React component using TypeScript to stdout: svgr --typescript -- {{path/to/file.svg}} Transform a SVG file into a React component using JSX transform to stdout: svgr --jsx-runtime automatic -- {{path/to/file.svg}} Transform all SVG files from a directory to React components into a specific directory: svgr --out-dir {{path/to/output_directory}} {{path/to/input_directory}}
svn Subversion command-line client tool. More information: https://subversion.apache.org. Check out a working copy from a repository: svn co {{url/to/repository}} Bring changes from the repository into the working copy: svn up Put files and directories under version control, scheduling them for addition to repository. They will be added in next commit: svn add {{PATH}} Send changes from your working copy to the repository: svn ci -m {{commit_log_message}} [{{PATH}}] Display changes from the last 10 revisions, showing modified files for each revision: svn log -vl {{10}}
svn changelist Associate a changelist with a set of files. More information: http://svnbook.red-bean.com/en/1.7/svn.advanced.changelists.html. Add files to a changelist, creating the changelist if it does not exist: svn changelist {{changelist_name}} {{path/to/file1}} {{path/to/file2}} Remove files from a changelist: svn changelist --remove {{path/to/file1}} {{path/to/file2}} Remove the whole changelist at once: svn changelist --remove --recursive --changelist {{changelist_name}} . Add the contents of a space-separated list of directories to a changelist: svn changelist --recursive {{changelist_name}} {{path/to/directory1}} {{path/to/directory2}}
swagger-codegen Generate code and documentation for your REST api from a OpenAPI/swagger definition. More information: https://github.com/swagger-api/swagger-codegen. Generate documentation and code from an OpenAPI/swagger file: swagger-codegen generate -i {{swagger_file}} -l {{language}} Generate Java code using the library retrofit2 and the option useRxJava2: swagger-codegen generate -i {{http://petstore.swagger.io/v2/swagger.json}} -l {{java}} --library {{retrofit2}} -D{{useRxJava2}}={{true}} List available languages: swagger-codegen langs Display help options for the generate command: swagger-codegen help {{generate}}
swc JavaScript and TypeScript compiler written in Rust. More information: https://swc.rs. Transpile a specified input file and output to stdout: swc {{path/to/file}} Transpile the input file every time it is changed: swc {{path/to/file}} --watch Transpile a specified input file and output to a specific file: swc {{path/to/input_file}} --out-file {{path/to/output_file}} Transpile a specified input directory and output to a specific directory: swc {{path/to/input_directory}} --out-dir {{path/to/output_directory}} Transpile a specified input directory using a specific configuration file: swc {{path/to/input_directory}} --config-file {{path/to/.
swift Create, run and build Swift projects. More information: https://swift.org. Start a REPL (interactive shell): swift Execute a program: swift {{file.swift}} Start a new project with the package manager: swift package init Generate an Xcode project file: swift package generate-xcodeproj Update dependencies: swift package update Compile project for release: swift build -c release
swig Generate bindings between C/C++ code and various high level languages such as JavaScript, Python, C#, and more. It uses special .i or .swg files to generate the bindings (C/C++ with SWIG directives, then outputs a C/C++ file that contains all the wrapper code needed to build an extension module. More information: http://www.swig.org. Generate a binding between C++ and Python: swig -c++ -python -o {{path/to/output_wrapper.cpp}} {{path/to/swig_file.i}} Generate a binding between C++ and Go: swig -go -cgo -intgosize 64 -c++ {{path/to/swig_file.
swipl SWI-Prolog - A comprehensive free Prolog environment. More information: https://www.swi-prolog.org/. Start an interactive session: swipl Execute a command without showing any output: swipl --quiet -t "{{command}}" Execute a script: swipl {{path/to/file.pl}} Print all shell configuration variables: swipl --dump-runtime-variables Print the version: swipl --version
symfony The console component for the Symfony framework. More information: https://symfony.com. Create a new Symfony project: symfony new {{name}} Run a local web server: symfony serve Stop the local web server: symfony server:stop Check for security issues in the project’s dependencies: symfony security:check
sync Flushes all pending write operations to the appropriate disks. More information: https://www.gnu.org/software/coreutils/sync. Flush all pending write operations on all disks: sync Flush all pending write operations on a single file to disk: sync {{path/to/file}}
syncthing Continuous bidirectional decentralised folder synchronisation tool. More information: https://docs.syncthing.net/. Start Syncthing: syncthing Start Syncthing without opening a web browser: syncthing -no-browser Print the device ID: syncthing -device-id Change the home directory: syncthing -home={{path/to/directory}} Force a full index exchange: syncthing -reset-deltas Change the address upon which the web interface listens: syncthing -gui-address={{ip_address:port|path/to/socket.sock}} Show filepaths to the files used by Syncthing: syncthing -paths Disable the Syncthing monitor process: syncthing -no-restart
sysbench Benchmark a System’s CPU, IO and memory. More information: https://github.com/akopytov/sysbench/. Run a CPU benchmark with 1 thread for 10 seconds: sysbench cpu run Run a CPU benchmark with multiple threads for a specified time: sysbench --threads={{number_of_threads}} --time={{seconds}} Run a memory benchmark with 1 thread for 10 seconds: sysbench memory run Prepare a filesystem-level read benchmark: sysbench fileio prepare Run a filesystem-level benchmark: sysbench --file-test-mode={{rndrd|rndrw|rndwr|seqrd|seqrewr|seqwr}} fileio run
tabula Extract tables from PDF files. More information: https://tabula.technology. Extract all tables from a PDF to a CSV file: tabula -o {{file.csv}} {{file.pdf}} Extract all tables from a PDF to a JSON file: tabula --format JSON -o {{file.json}} {{file.pdf}} Extract tables from pages 1, 2, 3, and 6 of a PDF: tabula --pages {{1-3,6}} {{file.pdf}} Extract tables from page 1 of a PDF, guessing which portion of the page to examine: tabula --guess --pages {{1}} {{file.
tac Display and concatenate files with lines in reversed order. See also: cat. More information: https://www.gnu.org/software/coreutils/tac. Concatenate specific files in reversed order: tac {{path/to/file1 path/to/file2 ...}} Display stdin in reversed order: {{cat path/to/file}} | tac Use a specific [s]eparator: tac -s {{separator}} {{path/to/file1 path/to/file2 ...}} Use a specific [r]egex as a [s]eparator: tac -r -s {{separator}} {{path/to/file1 path/to/file2 ...}} Use a separator [b]efore each file: tac -b {{path/to/file1 path/to/file2 ...}}
tail Display the last part of a file. See also: head. More information: https://www.gnu.org/software/coreutils/tail. Show last ‘count’ lines in file: tail --lines {{count}} {{path/to/file}} Print a file from a specific line number: tail --lines +{{count}} {{path/to/file}} Print a specific count of bytes from the end of a given file: tail --bytes {{count}} {{path/to/file}} Print the last lines of a given file and keep reading file until Ctrl + C: tail --follow {{path/to/file}}
tailscale A private WireGuard network service. Some subcommands such as tailscale up have their own usage documentation. More information: https://tailscale.com. Connect to Tailscale: sudo tailscale up Disconnect from Tailscale: sudo tailscale down Display the current Tailscale IP addresses: tailscale ip Ping a peer node at the Tailscale layer and display which route it took for each response: tailscale ping {{ip|hostname}} Analyze the local network conditions and display the result: tailscale netcheck
tailscale file Send files across connected devices on a Tailscale network. It currently does not support sending files to devices owned by other users even on the same Tailscale network. More information: https://tailscale.com/kb/1106/taildrop/. Send a file to a specific node: sudo tailscale file cp {{path/to/file}} {{hostname|ip}}: Store files that were sent to the current node into a specific directory: sudo tailscale file get {{path/to/directory}}
tailscale ssh SSH to a Tailscale machine (Linux Only). More information: https://tailscale.com/kb/1193/tailscale-ssh. Advertise/Disable SSH on the host: sudo tailscale up --ssh={{true|false}} SSH to a specific host which has Tailscale-SSH enabled: tailscale ssh {{username}}@{{host}}
tailscale up Connects the client to the Tailscale network. In version 1.8 and above, command-line arguments are stored and reused until they’re overwritten or --reset is called. More information: https://tailscale.com/kb/admin/. Connect to Tailscale: sudo tailscale up Connect and offer the current machine to be an exit node for internet traffic: sudo tailscale up --advertise-exit-node Connect using a specific node for internet traffic: sudo tailscale up --exit-node={{exit_node_ip}} Connect and block incoming connections to the current node: sudo tailscale up --shields-up
takeout A Docker-based development-only dependency manager. More information: https://github.com/tighten/takeout. Display a list of available services: takeout enable Enable a specific service: takeout enable {{name}} Enable a specific service with the default parameters: takeout enable --default {{name}} Display a list of enabled services: takeout disable Disable a specific service: takeout disable {{name}} Disable all services: takeout disable --all Start a specific container: takeout start {{container_id}} Stop a specific container: takeout stop {{container_id}}
tar Archiving utility. Often combined with a compression method, such as gzip or bzip2. More information: https://www.gnu.org/software/tar. [c]reate an archive and write it to a [f]ile: tar cf {{path/to/target.tar}} {{path/to/file1 path/to/file2 ...}} [c]reate a g[z]ipped archive and write it to a [f]ile: tar czf {{path/to/target.tar.gz}} {{path/to/file1 path/to/file2 ...}} [c]reate a g[z]ipped archive from a directory using relative paths: tar czf {{path/to/target.tar.gz}} --directory={{path/to/directory}} . E tract a (compressed) archive [f]ile into the current directory [v]erbosely: tar xvf {{path/to/source.
task Command-line to-do list manager. More information: https://taskwarrior.org/docs/. Add a new task which is due tomorrow: task add {{description}} due:{{tomorrow}} Update a task’s priority: task {{task_id}} modify priority:{{H|M|L}} Complete a task: task {{task_id}} done Delete a task: task {{task_id}} delete List all open tasks: task list List open tasks due before the end of the week: task list due.before:{{eow}} Show a graphical burndown chart, by day: task burndown.daily List all reports: task reports
tb Manage tasks and notes across multiple boards. More information: https://github.com/klaussinani/taskbook. Add a new task to a board: tb --task {{task_description}} @{{board_name}} Add a new note to a board: tb --note {{note_description}} @{{board_name}} Edit item’s priority: tb --priority @{{item_id}} {{priority}} Check/uncheck item: tb --check {{item_id}} Archive all checked items: tb --clear Move item to a board: tb --move @{{item_id}} {{board_name}}
tbl Table preprocessor for the groff (GNU Troff) document formatting system. See also groff and troff. More information: https://manned.org/tbl. Process input with tables, saving the output for future typesetting with groff to PostScript: tbl {{path/to/input_file}} > {{path/to/output.roff}} Typeset input with tables to PDF using the [me] macro package: tbl -T {{pdf}} {{path/to/input.tbl}} | groff -{{me}} -T {{pdf}} > {{path/to/output.pdf}}
tcc A tiny C compiler that can run C source files as scripts and otherwise has command-line options similar to gcc. More information: https://bellard.org/tcc/tcc-doc.html. Compile and link 2 source files to generate an executable: tcc -o {{executable_name}} {{path/to/file1.c}} {{path/to/file2.c}} Directly run an input file like a script and pass arguments to it: tcc -run {{path/to/source_file.c}} {{arguments}} Interpret C source files with a shebang inside the file: #!/full/path/to/tcc -run
tcpdump Dump traffic on a network. More information: https://www.tcpdump.org. List available network interfaces: tcpdump -D Capture the traffic of a specific interface: tcpdump -i {{eth0}} Capture all TCP traffic showing contents (ASCII) in console: tcpdump -A tcp Capture the traffic from or to a host: tcpdump host {{www.example.com}} Capture the traffic from a specific interface, source, destination and destination port: tcpdump -i {{eth0}} src {{192.168.1.1}} and dst {{192.168.1.2}} and dst port {{80}}
tcsh C shell with file name completion and command-line editing. See also: csh. More information: https://manned.org/tcsh. Start an interactive shell session: tcsh Start an interactive shell session without loading startup configs: tcsh -f Execute specific [c]ommands: tcsh -c "{{echo 'tcsh is executed'}}" Execute a specific script: tcsh {{path/to/script.tcsh}} Check a specific script for syntax errors: tcsh -n {{path/to/script.tcsh}} Execute specific commands from stdin: {{echo "echo 'tcsh is executed'"}} | tcsh
tea Interact with Gitea servers. More information: https://gitea.com/gitea/tea. Log into a Gitea server: tea login add --name "{{name}}" --url "{{url}}" --token "{{token}}" Display all repositories: tea repos ls Display a list of issues: tea issues ls Display a list of issues for a specific repository: tea issues ls --repo "{{repository}}" Create a new issue: tea issues create --title "{{title}}" --body "{{body}}" Display a list of open pull requests: tea pulls ls
tectonic A modern, self-contained TeX/LaTeX engine. More information: https://tectonic-typesetting.github.io/book/latest. Compile a standalone TeX/LaTeX file: tectonic -X compile {{path/to/file.tex}} Compile a standalone TeX/LaTeX file with synctex data: tectonic -X compile --synctex {{path/to/file.tex}} Initialize a tectonic project in the current directory: tectonic -X init Initialize a tectonic project in the specified directory: tectonic -X new {{project_name}} Build the project in the current directory: tectonic -X build Start a watcher to build the project in the current directory on change: tectonic -X watch
tee Read from stdin and write to stdout and files (or commands). More information: https://www.gnu.org/software/coreutils/tee. Copy stdin to each file, and also to stdout: echo "example" | tee {{path/to/file}} Append to the given files, do not overwrite: echo "example" | tee -a {{path/to/file}} Print stdin to the terminal, and also pipe it into another program for further processing: echo "example" | tee {{/dev/tty}} | {{xargs printf "[%s]"}} Create a directory called “example”, count the number of characters in “example” and write “example” to the terminal: echo "example" | tee >(xargs mkdir) >(wc -c)
telnet Connect to a specified port of a host using the telnet protocol. More information: https://manned.org/telnet. Telnet to the default port of a host: telnet {{host}} Telnet to a specific port of a host: telnet {{ip_address}} {{port}} Exit a telnet session: quit Emit the default escape character combination for terminating the session: Ctrl + ] Start telnet with “x” as the session termination character: telnet -e {{x}} {{ip_address}} {{port}} Telnet to Star Wars animation: telnet {{towel.
termdown Countdown timer and stopwatch for the command-line. More information: https://github.com/trehn/termdown. Start a stopwatch: termdown Start a 1 minute and 30 seconds countdown: termdown {{1m30s}} Start a 1 minute 30 seconds countdown with blinking the terminal at the end: termdown {{1m30s}} --blink Show a title above countdown: termdown {{1m30s}} --title "{{Interesting title}}" Display current time: termdown --time
terminalizer Utility program which records the terminal and generate animated GIFs or share a video. More information: https://terminalizer.com. Create the global config directory: terminalizer init Record the terminal and create a recording file: terminalizer record {{path/to/file}} Play a recorded file on the terminal: terminalizer play {{path/to/file}} Render a recording file as an animated GIF image: terminalizer render {{path/to/file}} Upload a video to terminalizer.com: terminalizer share {{path/to/file}}
terraform Create and deploy infrastructure as code to cloud providers. More information: https://www.terraform.io/. Initialize a new or existing Terraform configuration: terraform init Verify that the configuration files are syntactically valid: terraform validate Format configuration according to Terraform language style conventions: terraform fmt Generate and show an execution plan: terraform plan Build or change infrastructure: terraform apply Destroy Terraform-managed infrastructure: terraform destroy
terraform fmt Format configuration according to Terraform language style conventions. More information: https://www.terraform.io/docs/commands/fmt.html. Format the configuration in the current directory: terraform fmt Format the configuration in the current directory and subdirectories: terraform fmt -recursive Display diffs of formatting changes: terraform fmt -diff Do not list files that were formatted to stdout: terraform fmt -list=false
terraform plan Generate and show Terraform execution plans. More information: https://www.terraform.io/docs/cli/commands/plan.html. Generate and show the execution plan in the currently directory: terraform plan Show a plan to destroy all remote objects that currently exist: terraform plan -destroy Show a plan to update the Terraform state and output values: terraform plan -refresh-only Specify values for input variables: terraform plan -var '{{name1}}={{value1}}' -var '{{name2}}={{value2}}' Focus Terraform’s attention on only a subset of resources: terraform plan -target {{resource_type.
terragrunt Keep your Terraform CLI arguments DRY. More information: https://terragrunt.gruntwork.io. Generate and show an execution plan: terragrunt plan Build or change infrastructure: terragrunt apply Show current deployment (from state): terragrunt show Show module output values: terragrunt output Destroy Terraform-managed infrastructure: terragrunt destroy Build or change infrastructure from a tree of Terragrunt modules (stack): terragrunt run-all apply
tesseract OCR (Optical Character Recognition) engine. More information: https://github.com/tesseract-ocr/tesseract. Recognize text in an image and save it to output.txt (the .txt extension is added automatically): tesseract {{image.png}} {{output}} Specify a custom language (default is English) with an ISO 639-2 code (e.g. deu = Deutsch = German): tesseract -l deu {{image.png}} {{output}} List the ISO 639-2 codes of available languages: tesseract --list-langs Specify a custom page segmentation mode (default is 3): tesseract -psm {{0_to_10}} {{image.
test Check file types and compare values. Returns 0 if the condition evaluates to true, 1 if it evaluates to false. More information: https://www.gnu.org/software/coreutils/test. Test if a given variable is equal to a given string: test "{{$MY_VAR}}" == "{{/bin/zsh}}" Test if a given variable is empty: test -z "{{$GIT_BRANCH}}" Test if a file exists: test -f "{{path/to/file_or_directory}}" Test if a directory does not exist: test ! -d "{{path/to/directory}}" If A is true, then do B, or C in the case of an error (notice that C may run even if A fails): test {{condition}} && {{echo "true"}} || {{echo "false"}}
testssl Check SSL/TLS protocols and ciphers supported by a server. More information: https://testssl.sh/. Test a server (run every check) on port 443: testssl {{example.com}} Test a different port: testssl {{example.com:465}} Only check available protocols: testssl --protocols {{example.com}} Only check vulnerabilities: testssl --vulnerable {{example.com}} Only check HTTP security headers: testssl --headers {{example.com}}
tex Compile a DVI document from TeX source files. More information: https://www.tug.org/begin.html. Compile a DVI document: tex {{source.tex}} Compile a DVI document, specifying an output directory: tex -output-directory={{path/to/directory}} {{source.tex}} Compile a DVI document, exiting on each error: tex -halt-on-error {{source.tex}}
texcount Count words in TeX documents omitting macros. Note: if the TeX document uses \include or \input and you want to count the included files, texcount must be run in the directory of the root TeX file. More information: https://app.uio.no/ifi/texcount/howto.html. Count words in a TeX file: texcount {{path/to/file.tex}} Count words in a document and subdocuments built with \input or \include: texcount -merge {{file.tex}} Count words in a document and subdocuments, listing each file separately (and a total count): texcount -inc {{file.
texdoc Search for appropriate documentation for (La)TeX commands or packages. More information: https://texdoc.org/index.html. Open the first search result in the default PDF viewer: texdoc {{search}} List the best search results: texdoc --list {{search}} Open full documentation of texdoc: texdoc {{texdoc}}
texliveonfly Downloads missing TeX Live packages while compiling .tex files. More information: https://ctan.org/pkg/texliveonfly. Download missing packages while compiling: texliveonfly {{source.tex}} Use a specific compiler (defaults to pdflatex): texliveonfly --compiler={{compiler}} {{source.tex}} Use a custom TeX Live bin folder: texliveonfly --texlive_bin={{path/to/texlive_bin}} {{source.tex}}
textql Execute SQL against structured text like csv or tsv files. More information: https://github.com/dinedal/textql. Print the lines in the specified .csv file that match a SQL query to stdout: textql -sql "{{SELECT * FROM filename}}" {{path/to/filename.csv}} Query .tsv file: textql -dlm=tab -sql "{{SELECT * FROM filename}}" {{path/to/filename.tsv}} Query file with header row: textql -dlm={{delimiter}} -header -sql "{{SELECT * FROM filename}}" {{path/to/filename.csv}} Read data from stdin: cat {{path/to/file}} | textql -sql "{{SELECT * FROM stdin}}"
theHarvester A tool designed to be used in the early stages of a penetration test. More information: https://github.com/laramies/theHarvester. Gather information on a domain using Google: theHarvester --domain {{domain_name}} --source google Gather information on a domain using multiple sources: theHarvester --domain {{domain_name}} --source {{google,bing,crtsh}} Change the limit of results to work with: theHarvester --domain {{domain_name}} --source {{google}} --limit {{200}} Save the output to two files in XML and HTML format: theHarvester --domain {{domain_name}} --source {{google}} --file {{output_file_name}}
thunderbird Email client and RSS reader. More information: https://thunderbird.net. Open thunderbird: thunderbird Use a specific user profile: thunderbird -P {{profile_name}} Use a specific user profile directory: thunderbird --profile {{path/to/profile/directory}}
tig A text-mode interface for Git. More information: https://github.com/jonas/tig. Show the sequence of commits starting from the current one in reverse chronological order: tig Show the history of a specific branch: tig {{branch}} Show the history of specific files or directories: tig {{path1 path2 ...}} Show the difference between two references (such as branches or tags): tig {{base_ref}}..{{compared_ref}} Display commits from all branches and stashes: tig --all Start in stash view, displaying all saved stashes: tig stash
time Measure how long a command took to run. Note: time can either exist as a shell builtin, a standalone program or both. More information: https://manned.org/time. Run the command and print the time measurements to stdout: time {{command}}
timeout Run a command with a time limit. More information: https://www.gnu.org/software/coreutils/timeout. Run sleep 10 and terminate it, if it runs for more than 3 seconds: timeout {{3s}} {{sleep 10}} Specify the signal to be sent to the command after the time limit expires. (By default, TERM is sent): timeout --signal {{INT}} {{5s}} {{sleep 10}}
timetrap Simple command-line time tracker written in Ruby. More information: https://github.com/samg/timetrap. Create a new timesheet: timetrap sheet {{timesheet}} Check in an entry started 5 minutes ago: timetrap in --at "{{5 minutes ago}}" {{entry_notes}} Display the current timesheet: timetrap display Edit the last entry’s end time: timetrap edit --end {{time}}
timew A time tracking tool used to measure the duration of activities. More information: https://timewarrior.net/docs. Start a new stopwatch, giving a tag name to the activity being tracked: timew start {{activity_tag}} View running stopwatches: timew Stop the stopwatch with a given tag name: timew stop {{activity_tag}} Stop all running stopwatches: timew stop View tracked items: timew summary
timidity TiMidity++ is a MIDI file player and converter. More information: http://timidity.sourceforge.net. Play a MIDI file: timidity {{path/to/file.mid}} Play a MIDI file in a loop: timidity --loop {{path/to/file.mid}} Play a MIDI file in a specific key (0 = C major/A minor, -1 = F major/D minor, +1 = G major/E minor, etc.): timidity --force-keysig={{-flats|+sharps}} {{path/to/file.mid}} Convert a MIDI file to PCM (WAV) audio: timidity --output-mode={{w}} --output-file={{path/to/file.wav}} {{path/to/file.mid}} Convert a MIDI file to FLAC audio: timidity --output-mode={{F}} --output-file={{path/to/file.
tldr Display simple help pages for command-line tools from the tldr-pages project. More information: https://tldr.sh. Print the tldr page for a specific command (hint: this is how you got here!): tldr {{command}} Print the tldr page for a specific subcommand: tldr {{command}}-{{subcommand}} Print the tldr page for a command for a specific [p]latform: tldr -p {{android|linux|osx|sunos|windows}} {{command}} [u]pdate the local cache of tldr pages: tldr -u
tlmgr generate Remake configuration files from information stored locally. More information: https://www.tug.org/texlive/tlmgr.html. Remake the configuration file storing into a specific location: tlmgr generate --dest {{output_file}} Remake the configuration file using a local configuration file: tlmgr generate --localcfg {{local_configuration_file}} Run necessary programs after rebuilding configuration files: tlmgr generate --rebuild-sys
tldr-lint Lint and format tldr pages. More information: https://github.com/tldr-pages/tldr-lint. Lint all pages: tldr-lint {{pages_directory}} Format a specific page to stdout: tldr-lint --format {{page.md}} Format all pages in place: tldr-lint --format --in-place {{pages_directory}}
tldrl This command is an alias of tldr-lint. More information: https://github.com/tldr-pages/tldr-lint. View documentation for the original command: tldr tldr-lint
tlmgr Manages packages and configuration options of an existing TeX Live installation. Some subcommands such as tlmgr paper have their own usage documentation. More information: https://www.tug.org/texlive/tlmgr.html. Install a package and its dependencies: tlmgr install {{package}} Remove a package and its dependencies: tlmgr remove {{package}} Display information about a package: tlmgr info {{package}} Update all packages: tlmgr update --all Show possible updates without updating anything: tlmgr update --list Start a GUI version of tlmgr: tlmgr gui
tlmgr arch This command is an alias of tlmgr platform. More information: https://www.tug.org/texlive/tlmgr.html. View documentation for the original command: tldr tlmgr platform
tlmgr backup Manage backups of TeX Live packages. The default backup directory is specified by the backupdir option, and can be obtained with tlmgr option. More information: https://www.tug.org/texlive/tlmgr.html. Make a backup of one or more packages: tlmgr backup {{package1 package2 ...}} Make a backup of all packages: tlmgr backup --all Make a backup to a custom directory: tlmgr backup {{package}} --backupdir {{path/to/backup_directory}} Remove a backup of one or more packages: tlmgr backup clean {{package1 package2 .
tlmgr candidates Get available candidate repositories from which a TeX Live package can be installed. More information: https://www.tug.org/texlive/tlmgr.html. List all available repositories from which a package can be installed: tlmgr candidates {{package}}
tlmgr check Check the consistency of a TeX Live installation. More information: https://www.tug.org/texlive/tlmgr.html. Check the consistency of the whole TeX Live installation: tlmgr check all Check the consistency of the whole TeX Live information in verbose mode: tlmgr check all -v Check for missing dependencies: tlmgr check depends Check if all TeX Live executables are present: tlmgr check executes Check if all files listed in the local TLPDB are present: tlmgr check files
tlmgr conf Manage the TeX Live configuration. More information: https://www.tug.org/texlive/tlmgr.html. Show the current TeX Live configuration: tlmgr conf Show the current texmf, tlmgr, or updmap configuration: tlmgr conf {{texmf|tlmgr|updmap}} Show only a specific configuration option: tlmgr conf {{texmf|tlmgr|updmap}} {{configuration_key}} Set a specific configuration option: tlmgr conf {{texmf|tlmgr|updmap}} {{configuration_key}} {{value}} Delete a specific configuration option: tlmgr conf {{texmf|tlmgr|updmap}} --delete {{configuration_key}} Disable the execution of system calls via \write18: tlmgr conf texmf {{shell_escape}} {{0}}
tlmgr dump-tlpdb Dump the TeX Live package database. More information: https://www.tug.org/texlive/tlmgr.html. Dump the local package database: tlmgr dump-tlpdb --local Dump the remote package database: tlmgr dump-tlpdb --remote Dump the local package database as JSON: tlmgr dump-tlpdb --local --json
tlmgr gui Start a graphical user interface for tlmgr. tlmgr gui depends on the package perl-tk, which has to be installed manually. More information: https://www.tug.org/texlive/tlmgr.html. Start a GUI for tlmgr: sudo tlmgr gui Start a GUI specifying the background color: sudo tlmgr gui -background "{{#f39bc3}}" Start a GUI specifying the foreground color: sudo tlmgr gui -foreground "{{#0ef3bd}}" Start a GUI specifying the font and font size: sudo tlmgr gui -font "{{helvetica 18}}"
tlmgr info Show information about TeX Live packages. More information: https://www.tug.org/texlive/tlmgr.html. List all available TeX Live packages, prefexing installed ones with i: tlmgr info List all available collections: tlmgr info collections List all available schemes: tlmgr info scheme Show information about a specific package: tlmgr info {{package}} List all files contained in a specific package: tlmgr info {{package}} --list List all installed packages: tlmgr info --only-installed Show only specific information about a package: tlmgr info {{package}} --data "{{name}},{{category}},{{installed}},{{size}},{{depends}},.
tlmgr install Install TeX Live packages. More information: https://www.tug.org/texlive/tlmgr.html. Install a package and its dependencies: sudo tlmgr install {{package}} Reinstall a package: sudo tlmgr install --reinstall {{package}} Simulate installing a package without making any changes: tlmgr install --dry-run {{package}} Install a package without its dependencies: sudo tlmgr install --no-depends {{package}} Install a package from a specific file: sudo tlmgr install --file {{path/to/package}}
tlmgr key Manage GPG keys used to verify TeX Live databases. More information: https://www.tug.org/texlive/tlmgr.html. List all keys for TeX Live: tlmgr key list Add a key from a specific file: sudo tlmgr key add {{path/to/key.gpg}} Add a key from stdin: cat {{path/to/key.gpg}} | sudo tlmgr key add - Remove a specific key by its ID: sudo tlmgr key remove {{key_id}}
tlmgr option TeX Live settings manager. More information: https://www.tug.org/texlive/tlmgr.html. List all TeX Live settings: tlmgr option showall List all currently set Tex Live settings: tlmgr option show Print all TeX Live settings in JSON format: tlmgr option showall --json Show the value of a specific TeX Live setting: tlmgr option {{setting}} Modify the value of a specific TeX Live setting: tlmgr option {{setting}} {{value}} Set TeX Live to get future updates from the internet after installing from DVD: tlmgr option {{repository}} {{https://mirror.
tlmgr paper Manage paper size options of an TeX Live installation. More information: https://www.tug.org/texlive/tlmgr.html. Show the default paper size used by all TeX Live programs: tlmgr paper Set the default paper size for all TeX Live programs to A4: sudo tlmgr paper {{a4}} Show the default paper size used by a specific TeX Live program: tlmgr {{pdftex}} paper Set the default paper size for a specific TeX Live program to A4: sudo tlmgr {{pdftex}} paper {{a4}}
tlmgr path Add or remove symlinks for TeX Live executables, man pages and info pages. This command has to be re-run for files added in the future. More information: https://www.tug.org/texlive/tlmgr.html. Add symlinks to TeX Live files: sudo tlmgr path add Remove symlinks to TeX Live files: sudo tlmgr path remove
tlmgr pinning The pinning action manages the pinning file. More information: https://www.tug.org/texlive/doc/tlmgr.html#pinning. Show the current pinning data: tlmgr pinning show Pin the matching the packages to the given repository: tlmgr pinning add {{repository}} {{package1 package2 ...}} Remove any packages recorded in the pinning file matching the packages for the given repository: tlmgr pinning remove {{repository}} {{package1 package2 ...}} Remove all pinning data for the given repository: tlmgr pinning remove {{repository}} --all
tldr platform Manage TeX Live platforms. More information: https://www.tug.org/texlive/tlmgr.html. List all available platforms in the package repository: tlmgr platform list Add the executables for a specific platform: sudo tlmgr platform add {{platform}} Remove the executables for a specific platform: sudo tlmgr platform remove {{platform}} Auto-detect and switch to the current platform: sudo tlmgr platform set {{auto}} Switch to a specific platform: sudo tlmgr platform set {{platform}}
tlmgr recreate-tlpdb Recreate the TeX Live package database. This command has a lack of documentation and should be used with caution. More information: https://www.tug.org/texlive/tlmgr.html. Recreate the texlive.tlpdb database file and dump it to stdout: sudo tlmgr recreate-tlpdb
tlmgr remove Uninstall TeX Live packages. By default, removed packages will be backed up to ./tlpkg/backups under the TL installation directory. More information: https://www.tug.org/texlive/tlmgr.html. Uninstall a TeX Live package: sudo tlmgr remove {{package}} Simulate uninstalling a package without making any changes: tlmgr remove --dry-run {{package}} Uninstall a package without its dependencies: sudo tlmgr remove --no-depends {{package}} Uninstall a package and back it up to a specific directory: sudo tlmgr remove --backupdir {{path/to/directory}} {{package}}
tlmgr repository Manage repositories of a TeX Live installation. More information: https://www.tug.org/texlive/tlmgr.html. List all configured repositories and their tags (if set): tlmgr repository list List all packages available in a specific repository: tlmgr repository list {{path|url|tag}} Add a new repository with a specific tag (the tag is not required): sudo tlmgr repository add {{path|url}} {{tag}} Remove a specific repository: sudo tlmgr repository remove {{path|url|tag}} Set a new list of repositories, overwriting the previous list: sudo tlmgr repository set {{path|url|tag}}#{{tag}} {{path|url|tag}}#{{tag}} {{.
tlmgr restore Restore package backups created with tlmgr backup. The default backup directory is specified by the backupdir option, and can be obtained with tlmgr option. More information: https://www.tug.org/texlive/tlmgr.html. List all available backup revisions for all packages: tlmgr restore List all available backup revisions for a specific package: tlmgr restore {{package}} Restore a specific revision of a specific package: tlmgr restore {{package}} {{revision}} Restore the latest revision of all backed-up packages: tlmgr restore --all
tlmgr search Search for TeX Live packages using (Perl) regular expressions. More information: https://www.tug.org/texlive/tlmgr.html. Search for a package name and descriptions of all locally installed packages from a specific regular expression: tlmgr search "{{regular_expression}}" Search for all file names of all locally installed packages from a regular expression: tlmgr search --file "{{regular_expression}}" Search for all file names, package names, and descriptions of all locally installed packages from a regular expression: tlmgr search --all "{{regular_expression}}"
tlmgr shell Start an interactive shell of the native TeX Live manager. More information: https://www.tug.org/texlive/tlmgr.html. Start an interactive shell of tlmgr: tlmgr shell Run any tlmgr sub-command in the interactive shell: {{sub_command}} {{arguments}} Quit the interactive shell: quit List all TeX Live variables: get Get the value of a TeX Live variable: get {{variable}} Set the value of a TeX Live variable: set {{variable}} {{value}} Restart the interactive shell: restart
tlmgr update Update TeX Live packages. More information: https://www.tug.org/texlive/tlmgr.html. Update all TeX Live packages: sudo tlmgr update --all Update tlmgr itself: sudo tlmgr update --self Update a specific package: sudo tlmgr update {{package}} Update all except a specific package: sudo tlmgr update --all --exclude {{package}} Update all packages, making a backup of the current packages: sudo tlmgr update --all --backup Update a specific package without updating its dependencies: sudo tlmgr update --no-depends {{package}}
tmpmail A temporary email right from your terminal written in POSIX sh. More information: https://github.com/sdushantha/tmpmail. Create a temporary inbox: tmpmail --generate List messages and their numeric ID: tmpmail Display the most recent received email: tmpmail --recent Open a specific message: tmpmail {{email_id}} View email as raw text without HTML tags: tmpmail --text Open email with a specific browser (default is w3m): tmpmail --browser {{browser}}
tmsu Simple command-line tool for tagging files. More information: https://tmsu.org. Tag a specific file with multiple tags: tmsu tag {{path/to/file.mp3}} {{music}} {{big-jazz}} {{mp3}} Tag multiple files: tmsu tag --tags "{{music mp3}}" {{*.mp3}} List tags of specified file(s): tmsu tags {{*.mp3}} List files with specified tag(s): tmsu files {{big-jazz}} {{music}} List files with tags matching boolean expression: tmsu files "{{(year >= 1990 and year <= 2000)}} and {{grunge}}" Mount tmsu virtual filesystem to an existing directory: tmsu mount {{path/to/directory}}
tmux Terminal multiplexer. It allows multiple sessions with windows, panes, and more. See also zellij and screen. More information: https://github.com/tmux/tmux. Start a new session: tmux Start a new named session: tmux new -s {{name}} List existing sessions: tmux ls Attach to the most recently used session: tmux attach Detach from the current session (inside a tmux session): Ctrl-B d Create a new window (inside a tmux session): Ctrl-B c Switch between sessions and windows (inside a tmux session): Ctrl-B w
tmuxinator Create and manage tmux sessions easily. More information: https://github.com/tmuxinator/tmuxinator. Create a new project: tmuxinator new {{project}} Edit a project: tmuxinator edit {{project}} List projects: tmuxinator list Start a tmux session based on project: tmuxinator start {{project}} Stop a project’s tmux session: tmuxinator stop {{project}}
todo A simple, standards-based, cli todo manager. More information: https://todoman.readthedocs.io. List startable tasks: todo list --startable Add a new task to the work list: todo new {{thing_to_do}} --list {{work}} Add a location to a task with a given ID: todo edit --location {{location_name}} {{task_id}} Show details about a task: todo show {{task_id}} Mark tasks with the specified IDs as completed: todo done {{task_id1 task_id2 ...}} Delete a task: todo delete {{task_id}}
todoist Access https://todoist.com from the command-line. More information: https://github.com/sachaos/todoist. Add a task: todoist add "{{task_name}}" Add a high priority task with a label, project, and due date: todoist add "{{task_name}}" --priority {{1}} --label-ids "{{label_id}}" --project-name "{{project_name}}" --date "{{tmr 9am}}" Add a high priority task with a label, project, and due date in quick mode: todoist quick '#{{project_name}} "{{tmr 9am}}" p{{1}} {{task_name}} @{{label_name}}' List all tasks with a header and color: todoist --header --color list
todoman A simple, standards-based, cli todo manager. todoman is a common name for the command todo, but not a command itself. More information: https://todoman.readthedocs.io/. View documentation for the original command: tldr todo
tokei A program that prints out statistics about code. More information: https://github.com/XAMPPRocky/tokei. Get a report on the code in a directory and all subdirectories: tokei {{path/to/directory}} Get a report for a directory excluding .min.js files: tokei {{path/to/directory}} -e {{*.min.js}} Print out statistics for individual files in a directory: tokei {{path/to/directory}} --files Get a report for all files of type Rust and Markdown: tokei {{path/to/directory}} -t={{Rust}},{{Markdown}}
topgrade Update all applications on the system. More information: https://github.com/r-darwish/topgrade. Run updates: topgrade Say yes to all updates: topgrade -y Cleanup temporary/old files: topgrade -c Disable a certain update operation: topgrade --disable {{operation}} Only perform a certain update operation: topgrade --only {{operation}} Edit the config file with default editor: topgrade --edit-config
topydo A to-do list application that uses the todo.txt format. More information: https://github.com/topydo/topydo. Add a to-do to a specific project with a given context: topydo add "{{todo_message}} +{{project_name}} @{{context_name}}" Add a to-do with a due date of tomorrow with a priority of A: topydo add "(A) {{todo _message}} due:{{1d}}" Add a to-do with a due date of Friday: topydo add "{{todo_message}} due:{{fri}}" Add a non-strict repeating to-do (next due = now + rec): topydo add "water flowers due:{{mon}} rec:{{1w}}"
touch Create files and set access/modification times. More information: https://manned.org/man/freebsd-13.1/touch. Create specific files: touch {{path/to/file1 path/to/file2 ...}} Set the file [a]ccess or [m]odification times to the current one and don’t [c]reate file if it doesn’t exist: touch -c -{{a|m}} {{path/to/file1 path/to/file2 ...}} Set the file [t]ime to a specific value and don’t [c]reate file if it doesn’t exist: touch -c -t {{YYYYMMDDHHMM.SS}} {{path/to/file1 path/to/file2 ...}} Set the file time of a specific file to the time of anothe[r] file and don’t [c]reate file if it doesn’t exist: touch -c -r {{~/.
tox Automate Python testing across multiple Python versions. Use tox.ini to configure environments and test command. More information: https://github.com/tox-dev/tox. Run tests on all test environments: tox Create a tox.ini configuration: tox-quickstart List the available environments: tox --listenvs-all Run tests on a specific environment (e.g. Python 3.6): tox -e {{py36}} Force the virtual environment to be recreated: tox --recreate -e {{py27}}
tpp Command-Line based presentation tool. More information: https://github.com/cbbrowne/tpp. View a presentation: tpp {{path/to/file}} Output a presentation: tpp -t {{type}} -o {{path/to/output}} {{path/to/file}}
tput View and modify terminal settings and capabilities. More information: https://manned.org/tput. Move the cursor to a screen location: tput cup {{row}} {{column}} Set foreground (af) or background (ab) color: tput {{setaf|setab}} {{ansi_color_code}} Show number of columns, lines, or colors: tput {{cols|lines|colors}} Ring the terminal bell: tput bel Reset all terminal attributes: tput sgr0 Enable or disable word wrap: tput {{smam|rmam}}
tr Translate characters: run replacements based on single characters and character sets. More information: https://www.gnu.org/software/coreutils/tr. Replace all occurrences of a character in a file, and print the result: tr {{find_character}} {{replace_character}} < {{path/to/file}} Replace all occurrences of a character from another command’s output: echo {{text}} | tr {{find_character}} {{replace_character}} Map each character of the first set to the corresponding character of the second set: tr '{{abcd}}' '{{jkmn}}' < {{path/to/file}} Delete all occurrences of the specified set of characters from the input: tr -d '{{input_characters}}' < {{path/to/file}}
traceroute Print the route packets trace to network host. More information: https://manned.org/traceroute. Traceroute to a host: traceroute {{example.com}} Disable IP address and host name mapping: traceroute -n {{example.com}} Specify wait time in seconds for response: traceroute --wait={{0.5}} {{example.com}} Specify number of queries per hop: traceroute --queries={{5}} {{example.com}} Specify size in bytes of probing packet: traceroute {{example.com}} {{42}} Determine the MTU to the destination: traceroute --mtu {{example.com}} Use ICMP instead of UDP for tracerouting: traceroute --icmp {{example.
traefik An HTTP reverse proxy and load balancer. More information: https://traefik.io. Start server with default config: traefik Start server with a custom config file: traefik --c {{config_file}}.toml Start server with cluster mode enabled: traefik --cluster Start server with web UI enabled: traefik --web
trans Translate Shell is a command-line translator. More information: https://github.com/soimort/translate-shell. Translate a word (language is detected automatically): trans "{{word_or_sentence_to_translate}}" Get a brief translation: trans --brief "{{word_or_sentence_to_translate}}" Translate a word into french: trans :{{fr}} {{word}} Translate a word from German to English: trans {{de}}:{{en}} {{Schmetterling}} Behave like a dictionary to get the meaning of a word: trans -d {{word}}
transcode Transcode video and audio codecs, and convert between media formats. More information: https://manned.org/transcode. Create stabilization file to be able to remove camera shakes: transcode -J stabilize -i {{input_file}} Remove camera shakes after creating stabilization file, transform video using XviD: transcode -J transform -i {{input_file}} -y xvid -o {{output_file}} Resize the video to 640x480 pixels and convert to MPEG4 codec using XviD: transcode -Z 640x480 -i {{input_file}} -y xvid -o {{output_file}}
transcrypt Transparently encrypt files within a Git repository. More information: https://github.com/elasticdog/transcrypt. Initialize an unconfigured repository: transcrypt List the currently encrypted files: git ls-crypt Display the credentials of a configured repository: transcrypt --display Initialize and decrypt a fresh clone of a configured repository: transcrypt --cipher={{cipher}} Rekey to change the encryption cipher or password: transcrypt --rekey
transfersh An unofficial command-line client for transfer.sh. More information: https://github.com/AlpixTM/transfersh. Upload a file to transfer.sh: transfersh {{path/to/file}} Upload a file showing a progress bar (requires Python package requests_toolbelt): transfersh --progress {{path/to/file}} Upload a file using a different file name: transfersh --name {{filename}} {{path/to/file}} Upload a file to a custom transfer.sh server: transfersh --servername {{upload.server.name}} {{path/to/file}} Upload all files from a directory recursively: transfersh --recursive {{path/to/directory/}} Upload a specific directory as an uncompressed tar: transfersh -rt {{path/to/directory}}
transmission Transmission is a simple torrent client. Transmission isn’t a command, but a set of commands. See the pages below. More information: https://transmissionbt.com/. Show the tldr page for running Transmission’s daemon: tldr transmission-daemon Show the tldr page for interacting with the daemon: tldr transmission-remote Show the tldr page for creating torrent files: tldr transmission-create Show the tldr page for modifying torrent files: tldr transmission-edit Show the tldr page for getting info about torrent files: tldr transmission-show
transmission-cli A lightweight, command-line BitTorrent client. This tool has been deprecated, please see transmission-remote. More information: https://transmissionbt.com. Download a specific torrent: transmission-cli {{url|magnet|path/to/file}} Download a torrent to a specific directory: transmission-cli --download-dir {{path/to/download_directory}} {{url|magnet|path/to/file}} Create a torrent file from a specific file or directory: transmission-cli --new {{path/to/source_file_or_directory}} Set the download speed limit to 50 KB/s: transmission-cli --downlimit {{50}} {{url|magnet|path/to/file}} Set the upload speed limit to 50 KB/s: transmission-cli --uplimit {{50}} {{url|magnet|path/to/file}}
transmission-create Create BitTorrent .torrent files. More information: https://manned.org/transmission-create. Create a torrent with 2048 KB as the piece size: transmission-create -o {{path/to/example.torrent}} --tracker {{tracker_announce_url}} --piecesize {{2048}} {{path/to/file_or_directory}} Create a private torrent with a 2048 KB piece size: transmission-create -p -o {{path/to/example.torrent}} --tracker {{tracker_announce_url}} --piecesize {{2048}} {{path/to/file_or_directory}} Create a torrent with a comment: transmission-create -o {{path/to/example.torrent}} --tracker {{tracker_url1}} -c {{comment}} {{path/to/file_or_directory}} Create a torrent with multiple trackers: transmission-create -o {{path/to/example.torrent}} --tracker {{tracker_url1}} --tracker {{tracker_url2}} {{path/to/file_or_directory}}
transmission-daemon Daemon controlled with transmission-remote or its web interface. See also: transmission. More information: https://manned.org/transmission-daemon. Start a headless transmission session: transmission-daemon Start and watch a specific directory for new torrents: transmission-daemon --watch-dir {{path/to/directory}} Dump daemon settings in JSON format: transmission-daemon --dump-settings > {{path/to/file.json}} Start with specific settings for the web interface: transmission-daemon --auth --username {{username}} --password {{password}} --port {{9091}} --allowed {{127.0.0.1}}
transmission-edit Modify announce URLs from torrent files. See also: transmission. More information: https://manned.org/transmission-edit. Add or remove a URL from a torrent’s announce list: transmission-edit --{{add|delete}} {{http://example.com}} {{path/to/file.torrent}} Update a tracker’s passcode in a torrent file: transmission-edit --replace {{old-passcode}} {{new-passcode}} {{path/to/file.torrent}}
transmission-remote Remote control utility for transmission-daemon and transmission. More information: https://transmissionbt.com. Add a torrent file or magnet link to Transmission and download to a specified directory: transmission-remote {{hostname}} -a {{torrent|url}} -w {{/path/to/download_directory}} Change the default download directory: transmission-remote {{hostname}} -w {{/path/to/download_directory}} List all torrents: transmission-remote {{hostname}} --list Start torrent 1 and 2, stop torrent 3: transmission-remote {{hostname}} -t "{{1,2}}" --start -t {{3}} --stop Remove torrent 1 and 2, and also delete local data for torrent 2: transmission-remote {{hostname}} -t {{1}} --remove -t {{2}} --remove-and-delete
transmission-show Get information about a torrent file. See also: transmission. More information: https://manned.org/transmission-show. Display metadata for a specific torrent: transmission-show {{path/to/file.torrent}} Generate a magnet link for a specific torrent: transmission-show --magnet {{path/to/file.torrent}} Query a torrent’s trackers and print the current number of peers: transmission-show --scrape {{path/to/file.torrent}}
trap Automatically execute commands after receiving signals by processes or the operating system. Can be used to perform cleanups for interruptions by the user or other actions. More information: https://manned.org/trap. List available signals to set traps for: trap -l List active traps for the current shell: trap -p Set a trap to execute commands when one or more signals are detected: trap 'echo "Caught signal {{SIGHUP}}"' {{SIGHUP}} Remove active traps: trap - {{SIGHUP}} {{SIGINT}}
trash-cli A command-line interface to the trashcan APIs. More information: https://github.com/andreafrancia/trash-cli. Trash specific files and directories into the current trashcan: trash-put {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} Remove specific files from the current trashcan: trash-rm {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} Empty the current trashcan: trash-empty List trashed files and directories in the current trashcan: trash-list Restore a specific file or directory by a number from the displayed list from the current trashcan: trash-restore
travis Command-line client to interface with Travis CI. More information: https://github.com/travis-ci/travis.rb. Display the client version: travis version Authenticate the CLI client against the server, using an authentication token: travis login List repositories the user has permissions on: travis repos Encrypt values in .travis.yml: travis encrypt {{token}} Generate a .travis.yml file and enable the project: travis init
trawl Prints out network interface information to the console, much like ifconfig/ipconfig/ip/ifdata. More information: https://github.com/robphoenix/trawl. Show column names: trawl -n Filter interface names using a case-insensitive regular expression: trawl -f wi Get a list of available interfaces: trawl -i Include the loopback interface: trawl -l
tre Show the contents of the current directory as a tree. Respects the .gitignore settings by default. More information: https://github.com/dduan/tre. Print directories only: tre --directories Print JSON containing files in the tree hierarchy instead of the normal tree diagram: tre --json Print files and directories up to the specified depth limit (where 1 means the current directory): tre --limit {{depth}} Print all hidden files and directories using the specified colorization mode: tre --all --color {{automatic|always|never}}
tred Compute the transitive reduction of directed graphs. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://www.graphviz.org/pdf/tred.1.pdf. Construct the transitive reduction graph of one or more directed graphs: tred {{path/to/input1.gv}} {{path/to/input2.gv ...}} > {{path/to/output.gv}} Display help: tred -?
tree Show the contents of the current directory as a tree. More information: http://mama.indstate.edu/users/ice/tree/. Print files and directories up to ’num’ levels of depth (where 1 means the current directory): tree -L {{num}} Print directories only: tree -d Print hidden files too with colorization on: tree -a -C Print the tree without indentation lines, showing the full path instead (use -N to not escape non-printable characters): tree -i -f Print the size of each file and the cumulative size of each directory, in human-readable format: tree -s -h --du
trivy Scanner for vulnerabilities in container images, file systems, and Git repositories, as well as for configuration issues. More information: https://github.com/aquasecurity/trivy. Scan an image: trivy image {{image:tag}} Scan the filesystem for vulnerabilities and misconfigurations: trivy fs --security-checks {{vuln,config}} {{path/to/project_directory}} Scan a directory for misconfigurations: trivy config {{path/to/iac_directory}} Generate output with a SARIF template: trivy image --format {{template}} --template {{"@sarif.tpl"}} -o {{path/to/report.sarif}} {{image:tag}}
troff Typesetting processor for the groff (GNU Troff) document formatting system. See also groff. More information: https://manned.org/troff. Format output for a PostScript printer, saving the output to a file: troff {{path/to/input.roff}} | grops > {{path/to/output.ps}} Format output for a PostScript printer using the [me] macro package, saving the output to a file: troff -{{me}} {{path/to/input.roff}} | grops > {{path/to/output.ps}} Format output as [a]SCII text using the [man] macro package: troff -T {{ascii}} -{{man}} {{path/to/input.
true Returns a successful exit status code of 0. Use this with the || operator to make a command always exit with 0. More information: https://www.gnu.org/software/coreutils/true. Return a successful exit code: true
yes Output something repeatedly. This command is commonly used to answer yes to every prompt by install commands (such as apt-get). More information: https://www.gnu.org/software/coreutils/yes. Repeatedly output “message”: yes {{message}} Repeatedly output “y”: yes Accept everything prompted by the apt-get command: yes | sudo apt-get install {{program}}
truffle A tool for developing smart contracts for running services on the Ethereum blockchain. More information: https://www.trufflesuite.com/docs/truffle/reference/truffle-commands. Download a pre-built Truffle project (Truffle Box): truffle unbox {{box_name}} Compile contract source files in the current directory: truffle compile Run JavaScript and Solidity tests: truffle test Run migrations to deploy contracts: truffle migrate Display help for a subcommand: truffle help {{subcommand}}
truncate Shrink or extend the size of a file to the specified size. More information: https://www.gnu.org/software/coreutils/truncate. Set a size of 10 GB to an existing file, or create a new file with the specified size: truncate --size {{10G}} {{filename}} Extend the file size by 50 MiB, fill with holes (which reads as zero bytes): truncate --size +{{50M}} {{filename}} Shrink the file by 2 GiB, by removing data from the end of file: truncate --size -{{2G}} {{filename}}
ts Add timestamps to every line from stdin. More information: https://joeyh.name/code/moreutils/. Add a timestamp to the beginning of each line: {{command}} | ts Add timestamps with microsecond precision: {{command}} | ts "{%b %d %H:%M:%.S}" Add [i]ncremental timestamps with microsecond precision, starting from zero: {{command}} | ts -i "{%H:%M:%.S}" Convert existing timestamps in a text file (eg. a log file) into [r]elative format: cat {{path/to/file}} | ts -r
ts-node Run TypeScript code directly, without any compiling. More information: https://typestrong.org/ts-node. Execute a TypeScript file without compiling (node + tsc): ts-node {{path/to/file.ts}} Execute a TypeScript file without loading tsconfig.json: ts-node --skip-project {{path/to/file.ts}} Evaluate TypeScript code passed as a literal: ts-node --eval '{{console.log("Hello World")}}' Execute a TypeScript file in script mode: ts-node --script-mode {{path/to/file.ts}} Transpile a TypeScript file to JavaScript without executing it: ts-node --transpile-only {{path/to/file.ts}} Display TS-Node help: ts-node --help
tsc TypeScript compiler. More information: https://www.typescriptlang.org/docs/handbook/compiler-options.html. Compile a TypeScript file foobar.ts into a JavaScript file foobar.js: tsc {{foobar.ts}} Compile a TypeScript file into JavaScript using a specific target syntax (default is ES3): tsc --target {{ES5|ES2015|ES2016|ES2017|ES2018|ESNEXT}} {{foobar.ts}} Compile a TypeScript file into a JavaScript file with a custom name: tsc --outFile {{output.js}} {{input.ts}} Compile all .ts files of a TypeScript project defined in a tsconfig.json file: tsc --build {{tsconfig.json}} Run the compiler using command-line options and arguments fetched from a text file: tsc @{{args.
tslint A pluggable linting utility for TypeScript. More information: https://palantir.github.io/tslint. Create TSLint config: tslint --init Lint on a given set of files: tslint {{path/to/file1.js path/to/file2.js ...}} Fix lint issues: tslint --fix Lint with the config file in the project root: tslint --project {{path/to/project_root}}
tsort Perform a topological sort. A common use is to show the dependency order of nodes in a directed acyclic graph. More information: https://www.gnu.org/software/coreutils/tsort. Perform a topological sort consistent with a partial sort per line of input separated by blanks: tsort {{path/to/file}} Perform a topological sort consistent on strings: echo -e "{{UI Backend\nBackend Database\nDocs UI}}" | tsort
tsv-filter Filter lines of a TSV file by running tests against individual fields. More information: https://github.com/eBay/tsv-utils#tsv-filter. Print the lines where a specific column is numerically equal to a given number: tsv-filter -H --eq {{field_name}}:{{number}} {{path/to/tsv_file}} Print the lines where a specific column is [eq]ual/[n]on [e]qual/[l]ess [t]han/[l]ess than or [e]qual/[g]reater [t]han/[g]reater than or [e]qual to a given number: tsv-filter --{{eq|ne|lt|le|gt|ge}} {{column_number}}:{{number}} {{path/to/tsv_file}} Print the lines where a specific column is [eq]ual/[n]ot [e]qual/part of/not part of a given string: tsv-filter --str-{{eq|ne|in-fld|not-in-fld}} {{column_number}}:{{string}} {{path/to/tsv_file}}
tts Synthesize speech. More information: https://github.com/coqui-ai/TTS#command-line-tts. Run text-to-speech with the default models, writing the output to “tts_output.wav”: tts --text "{{text}}" List provided models: tts --list_models Query info for a model by idx: tts --model_info_by_idx {{model_type/model_query_idx}} Query info for a model by name: tts --model_info_by_name {{model_type/language/dataset/model_name}} Run a text-to-speech model with its default vocoder model: tts --text "{{text}}" --model_name {{model_type/language/dataset/model_name}} Run your own text-to-speech model (using the Griffin-Lim vocoder): tts --text "{{text}}" --model_path {{path/to/model.
tty Returns terminal name. More information: https://www.gnu.org/software/coreutils/tty. Print the file name of this terminal: tty
tuckr Dotfile manager written in Rust. More information: https://github.com/RaphGL/Tuckr. Check dotfile status: tuckr status Add all dotfiles to system: tuckr add \* Add all dotfiles except specified programs: tuckr add \* -e {{program1}},{{program2}} Remove all dotfiles from the system: tuckr rm \* Add a program dotfile and run its setup script: tuckr set {{program}}
tuir A text user-interface (TUI) to view and interact with Reddit from your terminal. Navigate with the Vim keys. More information: https://gitlab.com/ajak/tuir. Launch tuir: tuir Open a subreddit: /{{subreddit_name}} Open a link: o Open a specific subreddit on launch: tuir -s {{subreddit_name}} Open external links using programs defined in the mailcap config: tuir --enable-media
turbo High-performance build system for JavaScript and TypeScript codebases. See also: nx. More information: https://turborepo.org/docs/reference/command-line-reference. Log in using the default web browser with a Vercel account: turbo login Link the current directory to a Vercel organization and enable remote caching: turbo link Build the current project: turbo run build Run a task without concurrency: turbo run {{task_name}} --concurrency={{1}} Run a task ignoring cached artifacts and forcibly re-execute all tasks: turbo run {{task_name}} --force
twine Utility for publishing Python packages on PyPI. More information: https://twine.readthedocs.io/en/stable/#commands. Upload to PyPI: twine upload dist/* Upload to the Test PyPI [r]epository to verify things look right: twine upload -r testpypi dist/* Upload to PyPI with a specified [u]sername and [p]assword: twine upload -u {{username}} -p {{password}} dist/* Upload to an alternative repository URL: twine upload --repository-url {{repository_url}} dist/* Check that your distribution’s long description should render correctly on PyPI: twine check dist/*
twm A window manager for the X Window system. More information: https://gitlab.freedesktop.org/xorg/app/twm. Connect to the default X server: twm Connect to a specific X server: twm -display {{display}} Only manage the default screen: twm -s Use a specific startup file: twm -f {{path/to/file}} Enable verbose mode and print unexpected errors in X: twm -v
twopi Render an image of a radial network graph from a graphviz file. Layouts: dot, neato, twopi, circo, fdp, sfdp, osage & patchwork. More information: https://graphviz.org/doc/info/command.html. Render a png image with a filename based on the input filename and output format (uppercase -O): twopi -T {{png}} -O {{path/to/input.gv}} Render a svg image with the specified output filename (lowercase -o): twopi -T {{svg}} -o {{path/to/image.svg}} {{path/to/input.gv}} Render the output in ps, pdf, svg, fig, png, gif, jpg, json, or dot format: twopi -T {{format}} -O {{path/to/input.
twurl Curl-like command but tailored specifically for the Twitter API. More information: https://github.com/twitter/twurl. Authorize twurl to access a Twitter account: twurl authorize --consumer-key {{twitter_api_key}} --consumer-secret {{twitter_api_secret}} Make a GET request to an API endpoint: twurl -X GET {{twitter_api_endpoint}} Make a POST request to an API endpoint: twurl -X POST -d '{{endpoint_params}}' {{twitter_api_endpoint}} Upload media to Twitter: twurl -H "{{twitter_upload_url}}" -X POST "{{twitter_upload_endpoint}}" --file "{{path/to/media.jpg}}" --file-field "media" Access a different Twitter API host: twurl -H {{twitter_api_url}} -X GET {{twitter_api_endpoint}}
tye Developer tool that makes developing, testing, and deploying microservices and distributed applications easier. More information: https://github.com/dotnet/tye. Scaffold a tye.yaml file representing the application: tye init Run an application locally: tye run Build an application’s containers: tye build Push an application’s containers: tye push Deploy an application to Kubernetes: tye deploy Remove a deployed application from Kubernetes: tye undeploy
type Display the type of command the shell will execute. More information: https://manned.org/type. Display the type of a command: type {{command}} Display all locations containing the specified executable: type -a {{command}} Display the name of the disk file that would be executed: type -p {{command}}
typeorm A JavaScript ORM that can run on Node.js, browser, Cordova, Ionic, React Native, NativeScript, and Electron platforms. More information: https://typeorm.io/. Generate a new initial TypeORM project structure: typeorm init Create an empty migration file: typeorm migration:create --name {{migration_name}} Create a migration file with the SQL statements to update the schema: typeorm migration:generate --name {{migration_name}} Run all pending migrations: typeorm migration:run Create a new entity file in a specific directory: typeorm entity:create --name {{entity}} --dir {{path/to/directory}}
typeset Declare variables and give them attributes. More information: https://www.gnu.org/software/bash/manual/bash.html#Bash-Builtins. Declare a string variable with the specified value: typeset {{variable}}="{{value}}" Declare an integer variable with the specified value: typeset -i {{variable}}="{{value}}" Declare an array variable with the specified value: typeset {{variable}}=({{item_a item_b item_c}}) Declare an associative array variable with the specified value: typeset -A {{variable}}=({{[key_a]=item_a [key_b]=item_b [key_c]=item_c}}) Declare a readonly variable with the specified value: typeset -r {{variable}}="{{value}}" Declare a global variable within a function with the specified value: typeset -g {{variable}}="{{value}}"
typst Compile a Typst file to PDF. Note: Specifying the output location is optional. More information: https://github.com/typst/typst. List all discoverable fonts in the system and the given directory: typst --font-path {{path/to/fonts_directory}} fonts Compile a Typst file: typst compile {{path/to/source.typ}} {{path/to/output.pdf}} Watch a Typst file and recompile on changes: typst watch {{path/to/source.typ}} {{path/to/output.pdf}}
u3d A set of tools to interact with Unity. More information: https://github.com/DragonBox/u3d. Open the project in the current directory using the correct Unity version: u3d List installed versions of Unity: u3d list List available versions of Unity that can be downloaded: u3d available Download and install latest stable Unity version: u3d install latest_stable Download and install Unity version and editor [p]ackages: u3d install {{2021.2.0f1}} -p {{Unity,iOS,Android}}
ufraw-batch Convert RAW files from cameras into standard image files. More information: https://manned.org/ufraw-batch. Simply convert RAW files to JPG: ufraw-batch --out-type=jpg {{input_file(s)}} Simply convert RAW files to PNG: ufraw-batch --out-type=png {{input_file(s)}} Extract the preview image from the raw file: ufraw-batch --embedded-image {{input_file(s)}} Save the file with size up to the given maximums MAX1 and MAX2: ufraw-batch --size=MAX1,MAX2 {{input_file(s)}}
ugrep Ultra fast search tool with query TUI. More information: https://github.com/Genivia/ugrep. Start a query TUI to search files in the current directory recursively (CTRL-Z for help): ugrep --query Search the current directory recursively for files containing a regex search pattern: ugrep "{{search_pattern}}" Search in a specific file or in all files in a specific directory, showing line numbers of matches: ugrep --line-number "{{search_pattern}}" {{path/to/file_or_directory}} Search in all files in the current directory recursively and print the name of each matching file: ugrep --files-with-matches "{{search_pattern}}"
ulimit Get and set user limits. More information: https://manned.org/ulimit. Get the properties of all the user limits: ulimit -a Get hard limit for the number of simultaneously opened files: ulimit -H -n Get soft limit for the number of simultaneously opened files: ulimit -S -n Set max per-user process limit: ulimit -u 30
umask Manage the read/write/execute permissions that are masked out (i.e. restricted) for newly created files by the user. More information: https://manned.org/umask. Display the current mask in octal notation: umask Display the current mask in symbolic (human-readable) mode: umask -S Change the mask symbolically to allow read permission for all users (the rest of the mask bits are unchanged): umask {{a+r}} Set the mask (using octal) to restrict no permissions for the file’s owner, and restrict all permissions for everyone else: umask {{077}}
umount Unlink a filesystem from its mount point, making it no longer accessible. A filesystem cannot be unmounted when it is busy. More information: https://manned.org/umount.8. Unmount a filesystem, by passing the path to the source it is mounted from: umount {{path/to/device_file}} Unmount a filesystem, by passing the path to the target where it is mounted: umount {{path/to/mounted_directory}} Unmount all mounted filesystems (except the proc filesystem): umount -a
unalias Remove aliases. More information: https://manned.org/unalias. Remove an alias: unalias {{alias_name}} Remove all aliases: unalias -a
uname Print details about the current machine and the operating system running on it. See also lsb_release. More information: https://www.gnu.org/software/coreutils/uname. Print kernel name: uname Print system architecture and processor information: uname --machine --processor Print kernel name, kernel release and kernel version: uname --kernel-name --kernel-release --kernel-version Print system hostname: uname --nodename Print all available system information: uname --all
unar Extract contents from archive files. More information: https://manned.org/unar. Extract an archive to the current directory: unar {{archive}} Extract an archive to the specified directory: unar -o {{path/to/directory}} {{archive}} Force overwrite if files to be unpacked already exist: unar -f {{archive}} Force rename if files to be unpacked already exist: unar -r {{archive}} Force skip if files to be unpacked already exist: unar -s {{archive}}
unclutter Hides the mouse cursor. More information: https://manned.org/unclutter.1x. Hide mouse cursor after 3 seconds: unclutter -idle {{3}}
uncrustify C, C++, C#, D, Java and Pawn source code formatter. More information: https://github.com/uncrustify/uncrustify. Format a single file: uncrustify -f {{path/to/file.cpp}} -o {{path/to/output.cpp}} Read filenames from stdin, and take backups before writing output back to the original filepaths: find . -name "*.cpp" | uncrustify -F - --replace Don’t make backups (useful if files are under version control): find . -name "*.cpp" | uncrustify -F - --no-backup Use a custom configuration file and write the result to stdout: uncrustify -c {{path/to/uncrustify.
unexpand Convert spaces to tabs. More information: https://www.gnu.org/software/coreutils/unexpand. Convert blanks in each file to tabs, writing to stdout: unexpand {{path/to/file}} Convert blanks to tabs, reading from stdout: unexpand Convert all blanks, instead of just initial blanks: unexpand -a {{path/to/file}} Convert only leading sequences of blanks (overrides -a): unexpand --first-only {{path/to/file}} Have tabs a certain number of characters apart, not 8 (enables -a): unexpand -t {{number}} {{path/to/file}}
unflatten Adjust directed graphs to improve the layout aspect ratio. Graphviz filters: acyclic, bcomps, comps, edgepaint, gvcolor, gvpack, mingle, nop, sccmap, tred, & unflatten. More information: https://www.graphviz.org/pdf/unflatten.1.pdf. Adjust one or more directed graphs to improve the layout aspect ratio: unflatten {{path/to/input1.gv}} {{path/to/input2.gv ...}} > {{path/to/output.gv}} Use unflatten as a preprocessor for dot layout to improve aspect ratio: unflatten {{path/to/input.gv}} | dot -T {{png}} {{path/to/output.png}} Display help for unflatten: unflatten -?
uniq Output the unique lines from the given input or file. Since it does not detect repeated lines unless they are adjacent, we need to sort them first. More information: https://www.gnu.org/software/coreutils/uniq. Display each line once: sort {{path/to/file}} | uniq Display only unique lines: sort {{path/to/file}} | uniq -u Display only duplicate lines: sort {{path/to/file}} | uniq -d Display number of occurrences of each line along with that line: sort {{path/to/file}} | uniq -c
unison Bidirectional file synchronisation tool. More information: https://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html. Sync two directories (creates log first time these two directories are synchronized): unison {{path/to/directory_1}} {{path/to/directory_2}} Automatically accept the (non-conflicting) defaults: unison {{path/to/directory_1}} {{path/to/directory_2}} -auto Ignore some files using a pattern: unison {{path/to/directory_1}} {{path/to/directory_2}} -ignore {{pattern}} Show documentation: unison -doc {{topics}}
units Provide the conversion between two units of measure. More information: https://www.gnu.org/software/units/. Run in interactive mode: units List all units containing a specific string in interactive mode: search {{string}} Show the conversion between two simple units: units {{quarts}} {{tablespoons}} Convert between units with quantities: units "{{15 pounds}}" {{kilograms}} Show the conversion between two compound units: units "{{meters / second}}" "{{inches / hour}}" Show the conversion between units with different dimensions: units "{{acres}}" "{{ft^2}}"
unlink Remove a link to a file from the filesystem. The file contents is lost if the link is the last one to the file. More information: https://www.gnu.org/software/coreutils/unlink. Remove the specified file if it is the last link: unlink {{path/to/file}}
unlzma This command is an alias of xz --format=lzma --decompress. More information: https://manned.org/unlzma. View documentation for the original command: tldr xz
unrar Extract RAR archives. More information: https://manned.org/unrar. Extract files with original directory structure: unrar x {{compressed.rar}} Extract files to a specified path with the original directory structure: unrar x {{compressed.rar}} {{path/to/extract}} Extract files into current directory, losing directory structure in the archive: unrar e {{compressed.rar}} Test integrity of each file inside the archive file: unrar t {{compressed.rar}} List files inside the archive file without decompressing it: unrar l {{compressed.rar}}
unxz This command is an alias of xz --decompress. More information: https://manned.org/unxz. View documentation for the original command: tldr xz
unzip Extract files/directories from ZIP archives. See also: zip. More information: https://manned.org/unzip. Extract all files/directories from specific archives into the current directory: unzip {{path/to/archive1.zip path/to/archive2.zip ...}} Extract files/directories from archives to a specific path: unzip {{path/to/archive1.zip path/to/archive2.zip ...}} -d {{path/to/output}} Extract files/directories from archives to stdout: unzip -c {{path/to/archive1.zip path/to/archive2.zip ...}} Extract the contents of the file(s) to stdout alongside the extracted file names: unzip -O {{gbk}} {{path/to/archive1.zip path/to/archive2.zip ...}}
unzstd This command is an alias of zstd --decompress. View documentation for the original command: tldr zstd
updog A replacement for Python’s SimpleHTTPServer. It allows uploading and downloading via HTTP/S, can set ad hoc SSL certificates and use HTTP basic auth. More information: https://github.com/sc0tfree/updog. Start a HTTP server for the current directory: updog Start a HTTP server for a specified directory: updog --directory {{/path/to/directory}} Start a HTTP server on a specified port: updog --port {{port}} Start a HTTP server with a password (To log in, leave the username blank and enter the password in the password field): updog --password {{password}}
uptime Tell how long the system has been running and other information. More information: https://www.gnu.org/software/coreutils/uptime. Print current time, uptime, number of logged-in users and other information: uptime Show only the amount of time the system has been booted for: uptime --pretty Print the date and time the system booted up at: uptime --since Show version information: uptime --version
upx Compress or decompress executables. More information: https://upx.github.io. Compress executable: upx {{path/to/file}} Decompress executable: upx -d {{path/to/file}} Detailed help: upx --help
users Display a list of logged in users. See also: useradd, userdel, usermod. More information: https://www.gnu.org/software/coreutils/users. Print logged in usernames: users Print logged in usernames according to a given file: users {{/var/log/wmtp}}
uudecode Decode files encoded by uuencode. More information: https://manned.org/uudecode. Decode a file that was encoded with uuencode and print the result to stdout: uudecode {{path/to/encoded_file}} Decode a file that was encoded with uuencode and write the result to a file: uudecode -o {{path/to/decoded_file}} {{path/to/encoded_file}}
uuencode Encode binary files into ASCII for transport via mediums that only support simple ASCII encoding. More information: https://manned.org/uuencode. Encode a file and print the result to stdout: uuencode {{path/to/input_file}} {{output_file_name_after_decoding}} Encode a file and write the result to a file: uuencode -o {{path/to/output_file}} {{path/to/input_file}} {{output_file_name_after_decoding}} Encode a file using Base64 instead of the default uuencode encoding and write the result to a file: uuencode -m -o {{path/to/output_file}} {{path/to/input_file}} {{output_file_name_after_decoding}}
uvicorn Python ASGI HTTP Server, for asynchronous projects. More information: https://www.uvicorn.org/. Run Python web app: uvicorn {{import.path:app_object}} Listen on port 8080 on localhost: uvicorn --host {{localhost}} --port {{8080}} {{import.path:app_object}} Turn on live reload: uvicorn --reload {{import.path:app_object}} Use 4 worker processes for handling requests: uvicorn --workers {{4}} {{import.path:app_object}} Run app over HTTPS: uvicorn --ssl-certfile {{cert.pem}} --ssl-keyfile {{key.pem}} {{import.path:app_object}}
vagrant Manage lightweight, reproducible, and portable development environments. More information: https://www.vagrantup.com. Create Vagrantfile in current directory with the base Vagrant box: vagrant init Create Vagrantfile with the Ubuntu 20.04 (Focal Fossa) box from HashiCorp Atlas: vagrant init ubuntu/focal64 Start and provision the vagrant environment: vagrant up Suspend the machine: vagrant suspend Halt the machine: vagrant halt Connect to machine via SSH: vagrant ssh Output the SSH configuration file of the running Vagrant machine: vagrant ssh-config
vala Vala code runner. Tutorial: https://wiki.gnome.org/Projects/Vala/Tutorial. More information: https://valadoc.org/. Run a vala file, with gtk+: vala {{path/to/file.vala}} --pkg {{gtk+-3.0}} Display version info: vala --version Display helper message: vala --help
valac Vala code compiler. Tutorial: https://wiki.gnome.org/Projects/Vala/Tutorial. More information: https://valadoc.org/. Compile a vala file, with gtk+: valac {{path/to/file.vala}} --pkg {{gtk+-3.0}} Display version info: valac --version Display helper message: valac --help
vale Extensible style checker that supports multiple markup formats, such as Markdown and AsciiDoc. More information: https://vale.sh. Check the style of a file: vale {{path/to/file}} Check the style of a file with a specified configuration: vale --config='{{path/to/.vale.ini}}' {{path/to/file}} Output the results in JSON format: vale --output=JSON {{path/to/file}} Check style issues at the specific severity and higher: vale --minAlertLevel={{suggestion|warning|error}} {{path/to/file}} Check the style from stdin, specifying markup format: cat {{file.md}} | vale --ext=.
valgrind Wrapper for a set of expert tools for profiling, optimizing and debugging programs. Commonly used tools include memcheck, cachegrind, callgrind, massif, helgrind, and drd. More information: http://www.valgrind.org. Use the (default) Memcheck tool to show a diagnostic of memory usage by program: valgrind {{program}} Use Memcheck to report all possible memory leaks of program in full detail: valgrind --leak-check=full --show-leak-kinds=all {{program}} Use the Cachegrind tool to profile and log CPU cache operations of program: valgrind --tool=cachegrind {{program}}
var-dump-server Symfony dump server. Collects data dumped by the Symfony VarDumper component. More information: https://symfony.com/doc/current/components/var_dumper.html#the-dump-server. Start the server: var-dump-server Dump the data in an HTML file: var-dump-server --format=html > {{path/to/file.html}} Make the server listen on a specific address and port: var-dump-server --host {{127.0.0.1:9912}}
varnishlog Display Varnish logs. More information: https://varnish-cache.org/docs/trunk/reference/varnishlog.html. Display logs in real time: varnishlog Only display requests to a specific domain: varnishlog -q 'ReqHeader eq "Host: {{example.com}}"' Only display POST requests: varnishlog -q 'ReqMethod eq "{{POST}}"' Only display requests to a specific path: varnishlog -q 'ReqURL eq "{{/path}}"' Only display requests to paths matching a regular expression: varnishlog -q 'ReqURL ~ "{{regex}}"'
vault Interact with HashiCorp Vault. More information: https://www.vaultproject.io/docs/commands. Connect to a Vault server and initialize a new encrypted data store: vault init Unseal (unlock) the vault, by providing one of the key shares needed to access the encrypted data store: vault unseal {{key-share-x}} Authenticate the CLI client against the Vault server, using an authentication token: vault auth {{authentication_token}} Store a new secret in the vault, using the generic back-end called “secret”: vault write secret/{{hello}} value={{world}}
VBoxManage Command-line interface to VirtualBox. Includes all the functionality of the GUI and more. More information: https://www.virtualbox.org/manual/ch08.html#vboxmanage-intro. List all VirtualBox virtual machines: VBoxManage list vms Show information about a particular virtual machine: VBoxManage showvminfo {{name|uuid}} Start a virtual machine: VBoxManage startvm {{name|uuid}} Start a virtual machine in headless mode: VBoxManage startvm {{name|uuid}} --type headless Shutdown the virtual machine and save its current state: VBoxManage controlvm {{name|uuid}} savestate Shutdown down the virtual machine without saving its state: VBoxManage controlvm {{name|uuid}} poweroff
vcsh Version Control System for the home directory using Git repositories. More information: https://github.com/RichiH/vcsh. Initialize an (empty) repository: vcsh init {{repository_name}} Clone a repository into a custom directory name: vcsh clone {{git_url}} {{repository_name}} List all managed repositories: vcsh list Execute a Git command on a managed repository: vcsh {{repository_name}} {{git_command}} Push/pull all managed repositories to/from remotes: vcsh {{push|pull}} Write a custom .gitignore file for a managed repository: vcsh write-gitignore {{repository_name}}
vdir List directory contents. Drop-in replacement for ls -l. More information: https://www.gnu.org/software/coreutils/vdir. List files and directories in the current directory, one per line, with details: vdir List with sizes displayed in human-readable units (KB, MB, GB): vdir -h List including hidden files (starting with a dot): vdir -a List files and directories sorting entries by size (largest first): vdir -S List files and directories sorting entries by modification time (newest first): vdir -t
vectorize-pixelart Convert PNG pixel art graphics to SVG/EPS vector images. More information: https://github.com/und3f/vectorize-pixelart. Convert a PNG to a vector image format: vectorize-pixelart {{path/to/input.png}} {{path/to/output.svg|.eps}}
vegeta A command-line utility and a library for HTTP load testing. See also ab. More information: https://github.com/tsenart/vegeta. Launch an attack lasting 30 seconds: echo "{{GET https://example.com}}" | vegeta attack -duration={{30s}} Launch an attack on a server with a self-signed HTTPS certificate: echo "{{GET https://example.com}}" | vegeta attack -insecure -duration={{30s}} Launch an attack with a rate of 10 requests per second: echo "{{GET https://example.com}}" | vegeta attack -duration={{30s}} -rate={{10}} Launch an attack and display a report: echo "{{GET https://example.
vela Command-line tools for the Vela pipeline. More information: https://go-vela.github.io/docs/reference/cli/. Trigger a pipeline to run from a Git branch, commit or tag: vela add deployment --org {{organization}} --repo {{repository_name}} --target {{environment}} --ref {{branch|commit|refs/tags/git_tag}} --description "{{deploy_description}}" List deployments for a repository: vela get deployment --org {{organization}} --repo {{repository_name}} Inspect a specific deployment: vela view deployment --org {{organization}} --repo {{repository_name}} --deployment {{deployment_number}}
velero Backup and migrate Kubernetes applications and their persistent volumes. More information: https://github.com/heptio/velero. Create a backup containing all resources: velero backup create {{backup_name}} List all backups: velero backup get Delete a backup: velero backup delete {{backup_name}} Create a weekly backup, each living for 90 days (2160 hours): velero schedule create {{schedule_name}} --schedules="{{@every 7d}}" --ttl {{2160h0m0s}} Create a restore from the latest successful backup triggered by specific schedule: velero restore create --from-schedule {{schedule_name}}
venv Create lightweight virtual environments in python. More information: https://docs.python.org/3/library/venv.html. Create a python virtual environment: python -m venv {{path/to/virtual_environment}} Activate the virtual environment (Linux and Mac OS): source {{path/to/virtual_environment}}/bin/activate Activate the virtual environment (Windows): {{path\to\virtual_environment}}\Scripts\activate.bat Deactivate the virtual environment: deactivate
vercel Deploy and manage your Vercel deployments. More information: https://vercel.com/docs/cli. Deploy the current directory: vercel Deploy the current directory to production: vercel --prod Deploy a directory: vercel {{path/to/project}} Initialize an example project: vercel init Deploy with Environment Variables: vercel --env {{ENV}}={{var}} Build with Environment Variables: vercel --build-env {{ENV}}={{var}} Set default regions to enable the deployment on: vercel --regions {{region_id}} Remove a deployment: vercel remove {{project_name}}
verilator Converts Verilog and SystemVerilog hardware description language (HDL) design into a C++ or SystemC model to be executed after compiling. More information: https://veripool.org/guide/latest/. Build a specific C project in the current directory: verilator --binary --build-jobs 0 -Wall {{path/to/source.v}} Create a C++ executable in a specific folder: verilator --cc --exe --build --build-jobs 0 -Wall {{path/to/source.cpp}} {{path/to/output.v}} Perform linting over a code in the current directory: verilator --lint-only -Wall Create XML output about the design (files, modules, instance hierarchy, logic and data types) to feed into other tools: verilator --xml-output -Wall {{path/to/output.
vgmstream_cli Play a wide variety of audio formats used in video games and convert them into wav. More information: https://vgmstream.org/doc/USAGE. Decode an adc file to wav. (Default output name is input.wav): vgmstream_cli {{path/to/input.adc}} -o {{path/to/output.wav}} Print metadata without decoding the audio: vgmstream_cli {{path/to/input.adc}} -m Decode an audio file without loops: vgmstream_cli {{path/to/input.adc}} -o {{path/to/output.wav}} -i Decode with three loops, then add a 3s delay followed by a 5s fadeout: vgmstream_cli {{path/to/input.
vgrep A user friendly pager for grep. See also: ugrep, rg. More information: https://github.com/vrothberg/vgrep. Recursively search the current directory for a pattern and cache it: vgrep {{search_pattern}} Display the contents of the cache: vgrep Open the “4th” match from the cache in the default editor: vgrep --show {{4}} Display a context of “3” lines for each match in the cache: vgrep --show=context{{3}} Display the number of matches for each directory in the tree: vgrep --show=tree
vhs Generate terminal gifs from a tape file. More information: https://github.com/charmbracelet/vhs. Create a tape file (add commands to the tape file using an editor): vhs new {{path/to/file.tape}} Record inputs to a tape file (once done, exit the shell to create the tape): vhs record > {{path/to/file.tape}} Record inputs to a tape file using a specific shell: vhs record --shell {{shell}} > {{path/to/file.tape}} Validate the syntax of a tape file: vhs validate {{path/to/file.
vi This command is an alias of vim. View documentation for the original command: tldr vim
view A read-only version of vim. This is equivalent to vim -R. More information: https://www.vim.org. Open a file: view {{path/to/file}}
vifm Vifm (VI File Manager) is a command-line file manager. More information: https://github.com/vifm/vifm. Open the current directory: vifm . Open specified directories on left or right plane: vifm {{path/to/directory1 path/to/directory2 ...}}
vim Vim (Vi IMproved), a command-line text editor, provides several modes for different kinds of text manipulation. Pressing i in normal mode enters insert mode. Pressing <Esc> goes back to normal mode, which enables the use of Vim commands. See also vimdiff, vimtutor, nvim. More information: https://www.vim.org. Open a file: vim {{path/to/file}} Open a file at a specified line number: vim +{{line_number}} {{path/to/file}} View Vim’s help manual: :help<Enter> Save and quit the current buffer: :wq<Enter>
vimdiff Open up two or more files in vim and show the differences between them. See also vim, vimtutor, nvim. More information: https://www.vim.org. Open two files and show the differences: vimdiff {{file1}} {{file2}} Move the cursor to the window on the left|right: Ctrl + w {{h|l}} Jump to the previous difference: [c Jump to the next difference: ]c Copy the highlighted difference from the other window to the current window: do
vimtutor Vim tutor, teaching the basic vim commands. See also vim, vimdiff, nvim. More information: https://manned.org/vimtutor. Launch the vim tutor using the given language (en, fr, de, …): vimtutor {{language}} Exit the tutor: <Esc> :q <Enter>
virsh Manage virsh guest domains. (NOTE: ‘guest_id’ can be the id, name or UUID of the guest). Some subcommands such as virsh list have their own usage documentation. More information: https://libvirt.org/virshcmdref.html. Connect to a hypervisor session: virsh connect {{qemu:///system}} List all domains: virsh list --all Dump guest configuration file: virsh dumpxml {{guest_id}} > {{path/to/guest.xml}} Create a guest from a configuration file: virsh create {{path/to/config_file.xml}} Edit a guest’s configuration file (editor can be changed with $EDITOR): virsh edit {{guest_id}}
virsh-connect Connect to a virtual machine hypervisor. See also: virsh. More information: https://manned.org/virsh. Connect to the default hypervisor: virsh connect Connect as root to the local QEMU/KVM hypervisor: virsh connect qemu:///system Launch a new instance of the hypervisor and connect to it as the local user: virsh connect qemu:///session Connect as root to a remote hypervisor using ssh: virsh connect qemu+ssh://{{user_name@host_name}}/system
virsh-domblklist List information about block devices associated with a virtual machine. See also: virsh. More information: https://manned.org/virsh. List the target name and source path of the block devices: virsh domblklist --domain {{vm_name}} List the disk type and device value as well as the target name and source path: virsh domblklist --domain {{vm_name}} --details
virsh-help Display information about virsh commands or command groups. See also: virsh. More information: https://manned.org/virsh. List the virsh commands grouped into related categories: virsh help List the command categories: virsh help | grep "keyword" List the commands in a category: virsh help {{category_keyword}} Show help for a command: virsh help {{command}}
virsh-list List the ID, name, and state of virtual machines. See also: virsh. More information: https://manned.org/virsh. List information about running virtual machines: virsh list List information about virtual machines regardless of state: virsh list --all List information about virtual machines with autostart either enabled or disabled: virsh list --all --{{autostart|no-autostart}} List information about virtual machines either with or without snapshots: virsh list --all --{{with-snapshot|without-snapshot}}
virsh pool-autostart Enable or disable autostart for a virtual machine storage pool. See also: virsh. More information: https://manned.org/virsh. Enable autostart for the storage pool specified by name or UUID (determine using virsh pool-list): virsh pool-autostart --pool {{name|uuid}} Disable autostart for the storage pool specified by name or UUID: virsh pool-autostart --pool {{name|uuid}} --disable
virsh pool-build Build the underlying storage system for a virtual machine storage pool as defined in it’s configuration file in /etc/libvirt/storage. See also: virsh, virsh-pool-define-as, virsh-pool-start. More information: https://manned.org/virsh. Build the storage pool specified by name or UUID (determine using virsh pool-list): virsh pool-build --pool {{name|uuid}}
virsh pool-define-as Create a configuration file in /etc/libvirt/storage for a persistent virtual machine storage pool from the provided arguments. See also: virsh, virsh-pool-build, virsh-pool-start. More information: https://manned.org/virsh. Create the configuration file for a storage pool called pool_name using /var/vms as the underlying storage system: virsh pool-define-as --name {{pool_name}} --type {{dir}} --target {{/var/vms}}
virsh pool-delete Delete the underlying storage system of an inactive virtual machine storage pool. See also: virsh, virsh-pool-destroy, virsh-pool-undefine. More information: https://manned.org/virsh. Delete the underlying storage system for the storage pool specified by name or UUID (determine using virsh pool-list): virsh pool-delete --pool {{name|uuid}}
virsh pool-destroy Stop an active virtual machine storage pool. See also: virsh, virsh-pool-delete. More information: https://manned.org/virsh. Stop a storage pool specified by name or UUID (determine using virsh pool-list): virsh pool-destroy --pool {{name|uuid}}
virsh pool-info List information about a virtual machine storage pool. See also: virsh. More information: https://manned.org/virsh. List the name, UUID, state, persistence type, autostart status, capacity, space allocated, and space available for the storage pool specified by name or UUID (determine using virsh pool-list): virsh pool-info --pool {{name|uuid}}
virsh pool-list List information about virtual machine storage pools. See also: virsh, virsh-pool-autostart, virsh-pool-define-as. More information: https://manned.org/virsh. List the name, state, and whether autostart is enabled or disabled for active storage pools: virsh pool-list List information for active and inactive or just inactive storage pools: virsh pool-list --{{all|inactive}} List extended information about persistence, capacity, allocation, and available space for active storage pools: virsh pool-list --details List information for active storage pools with either autostart enabled or disabled: virsh pool-list --{{autostart|no-autostart}}
virsh pool-start Start a previously configured but inactive virtual machine storage pool. See also: virsh, virsh-pool-define-as, virsh-pool-destroy. More information: https://manned.org/virsh. Start the storage pool specified by name or UUID (determine using virsh pool-list) and create the underlying storage system if it doesn’t exist: virsh pool-start --pool {{name|uuid}} --build
virsh pool-undefine Delete the configuration file in /etc/libvirt/storage for a stopped virtual machine storage pool. See also: virsh, virsh-pool-destroy. More information: https://manned.org/virsh. Delete the configuration for the storage pool specified name or UUID (determine using virsh pool-list): virsh pool-undefine --pool {{name|uuid}}
virsh-undefine Delete a virtual machine. More information: https://manned.org/virsh. Delete only the virtual machine configuration file: virsh undefine --domain {{vm_name}} Delete the configuration file and all associated storage volumes: virsh undefine --domain {{vm_name}} --remove-all-storage Delete the configuration file and the specified storage volumes using the target name or the source name (as obtained from the virsh domblklist command): virsh undefine --domain {{vm_name}} --storage {{sda,path/to/source}}
virt-clone Clone a libvirt virtual machine. More information: https://manned.org/virt-clone. Clone a virtual machine and automatically generate a new name, storage path, and MAC address: virt-clone --original {{vm_name}} --auto-clone Clone a virtual machine and specify the new name, storage path, and MAC address: virt-clone --original {{vm_name}} --name {{new_vm_name}} --file {{path/to/new_storage}} --mac {{ff:ff:ff:ff:ff:ff|RANDOM}}
virt-install Create virtual machines with libvirt and begin OS installation. More information: https://virt-manager.org/. Create a virtual machine with 1 GB RAM and 12 GB storage and start a Debian installation: virt-install --name {{vm_name}} --memory {{1024}} --disk path={{path/to/image.qcow2}},size={{12}} --cdrom {{path/to/debian.iso}} Create a x86-64, KVM-accelerated, UEFI-based virtual machine with the Q35 chipset, 4 GiB RAM, 16 GiB RAW storage, and start a Fedora installation: virt-install --name {{vm_name}} --arch {{x86_64}} --virt-type {{kvm}} --machine {{q35}} --boot {{uefi}} --memory {{4096}} --disk path={{path/to/image.
virt-sparsify Make virtual machine drive images thin-provisioned. NOTE: Use only for offline machines to avoid data corruption. More information: https://libguestfs.org. Create a sparsified compressed image without snapshots from an unsparsified one: virt-sparsify --compress {{path/to/image.qcow2}} {{path/to/image_new.qcow2}} Sparsify an image in-place: virt-sparsify --in-place {{path/to/image.img}}
virt-sysprep Reset, unconfigure, or customize a virtual machine image. More information: https://manned.org/virt-sysprep. List all supported operations (enabled operations are indicated with asterisks): virt-sysprep --list-operations Run all enabled operations but don’t actually apply the changes: virt-sysprep --domain {{vm_name}} --dry-run Run only the specified operations: virt-sysprep --domain {{vm_name}} --operations {{operation1,operation2,...}} Generate a new /etc/machine-id file and enable customizations to be able to change the host name to avoid network conflicts: virt-sysprep --domain {{vm_name}} --enable {{customizations}} --hostname {{host_name}} --operation {{machine-id}}
virtualenv Create virtual isolated Python environments. More information: https://virtualenv.pypa.io/. Create a new environment: virtualenv {{path/to/venv}} Customize the prompt prefix: virtualenv --prompt={{prompt_prefix}} {{path/to/venv}} Use a different version of Python with virtualenv: virtualenv --python={{path/to/pythonbin}} {{path/to/venv}} Start (select) the environment: source {{path/to/venv}}/bin/activate Stop the environment: deactivate
virtualenvwrapper Group of simple wrapper commands for Python’s virtualenv tool. More information: http://virtualenvwrapper.readthedocs.org. Create a new Python virtualenv in $WORKON_HOME: mkvirtualenv {{virtualenv_name}} Create a virtualenv for a specific Python version: mkvirtualenv --python {{/usr/local/bin/python3.8}} {{virtualenv_name}} Activate or use a different virtualenv: workon {{virtualenv_name}} Stop the virtualenv: deactivate List all virtual environments: lsvirtualenv Remove a virtualenv: rmvirtualenv {{virtualenv_name}} Get summary of all virtualenvwrapper commands: virtualenvwrapper
visudo Safely edit the sudoers file. More information: https://www.sudo.ws/docs/man/visudo.man. Edit the sudoers file: sudo visudo Check the sudoers file for errors: sudo visudo -c Edit the sudoers file using a specific editor: sudo EDITOR={{editor}} visudo Display version information: visudo --version
Vite Create a Vite project. Used to build JavaScript projects. Available templates: vanilla, vanilla-ts, vue, vue-ts, react, react-ts, react-swc, react-swc-ts, preact, preact-ts, lit, lit-ts, svelte, svelte-ts. More information: https://vitejs.dev/guide. Setup using npm 6.x: npm create vite@latest my-react-app --template react-ts Setup using npm 7+, extra double-dash is needed: npm create vite@latest my-react-app -- --template react-ts Setup using yarn: yarn create vite my-react-app --template react-ts Setup using pnpm: pnpm create vite my-react-app --template react-ts
viu View images on the terminal. More information: https://github.com/atanunq/viu. Render an image or animated GIF: viu {{path/to/file}} Render an image or GIF from the internet using curl: curl -s {{https://example.com/image.png}} | viu - Render an image with a transparent background: viu -t {{path/to/file}} Render an image with a specific width and height in pixels: viu -w {{width}} -h {{height}} {{path/to/file}} Render an image or GIF and display its file name: viu -n {{path/to/file}}
vladimyr Dario Vladović’s personal CLI. More information: https://github.com/vladimyr/vladimyr-cli. Start Dario’s interactive CLI: vladimyr
vlc Cross-platform multimedia player. More information: https://wiki.videolan.org/Documentation:Command_line/. Play a file: vlc {{path/to/file}} Play in fullscreen: vlc --fullscreen {{path/to/file}} Play muted: vlc --no-audio {{path/to/file}} Play repeatedly: vlc --loop {{path/to/file}} Play video from a URL: vlc {{https://www.youtube.com/watch?v=oHg5SJYRHA0}}
volta A JavaScript Tool Manager that installs Node.js runtimes, npm and Yarn package managers, or any binaries from npm. More information: https://volta.sh. List all installed tools: volta list Install the latest version of a tool: volta install {{node|npm|yarn|package_name}} Install a specific version of a tool: volta install {{node|npm|yarn}}@version Choose a tool version for a project (will store it in package.json): volta pin {{node|npm|yarn}}@version Display help: volta help Display help for a subcommand: volta help {{fetch|install|uninstall|pin|list|completions|which|setup|run|help}}
vsce Extension manager for Visual Studio Code. More information: https://github.com/microsoft/vscode-vsce. List all the extensions created by a publisher: vsce list {{publisher}} Publish an extension as major, minor or patch version: vsce publish {{major|minor|patch}} Unpublish an extension: vsce unpublish {{extension_id}} Package the current working directory as a .vsix file: vsce package Show the metadata associated with an extension: vsce show {{extension_id}}
vt Command-line interface for VirusTotal. API key from a VirusTotal account is required for this command. More information: https://github.com/VirusTotal/vt-cli. Scan a specific file for viruses: vt scan file {{path/to/file}} Scan a URL for viruses: vt scan url {{url}} Display information from a specific analysis: vt analysis {{file_id|analysis_id}} Download files in encrypted .zip format (requires premium account): vt download {{file_id}} --output {{path/to/directory}} --zip --zip-password {{password}} Initialize or re-initialize vt to enter API key interactively: vt init
vue Multi-purpose CLI for Vue.js. Some subcommands such as vue build have their own usage documentation. More information: https://cli.vuejs.org. Create a new Vue project interactively: vue create {{project_name}} Create a new project with web UI: vue ui
vue build A subcommand provided by @vue/cli and @vue/cli-service-global that enables quick prototyping. More information: https://cli.vuejs.org/guide/prototyping.html. Build a .js or .vue file in production mode with zero config: vue build {{filename}}
vue init Legacy project initialization subcommand of the Vue.js framework. More information: https://cli.vuejs.org/guide/creating-a-project.html#pulling-2-x-templates-legacy. Create a new project using one of the default templates: vue init {{webpack|webpack-simple|browserify|browserify-simple|simple}} {{project_name}} Create a new project using a local template: vue init {{path/to/template_directory}} {{project_name}} Create a new project using a template from GitHub: vue init {{username}}/{{repo}} {{project_name}}
vue serve A subcommand provided by @vue/cli and @vue/cli-service-global that enables quick prototyping. More information: https://cli.vuejs.org/guide/prototyping.html. Serve a .js or .vue file in development mode with zero config: vue serve {{filename}}
vzdump Backup Utility for virtual machines and containers. More information: https://pve.proxmox.com/pve-docs/vzdump.1.html. Dump a guest virtual machine into the default dump directory (usually /var/lib/vz/dump/), excluding snapshots: vzdump {{vm_id}} Back up the guest virtual machines with the IDs 101, 102, and 103: vzdump {{101 102 103}} Dump a guest virtual machine using a specific mode: vzdump {{vm_id}} --mode {{suspend|snapshot}} Back up all guest systems and send an notification email to the root and admin users: vzdump --all --mode {{suspend}} --mailto {{root}} --mailto {{admin}}
w Show who is logged on and what they are doing. Print user login, TTY, remote host, login time, idle time, current process. More information: https://manned.org/w. Show logged-in users info: w Show logged-in users info without a header: w -h
w3m A text-based web browser. Supports SSL and mouse input, even over SSH. More information: http://w3m.sourceforge.net. Open a URL: w3m {{http://example.com}} Open a URL in monochrome mode: w3m {{http://example.com}} -M Open a URL without mouse support: w3m {{http://example.com}} --no-mouse Open a new browser tab: Shift + T Display your browser history: Ctrl + H Quit w3m: 'q' then 'y'
waifu2x-ncnn-vulkan Image upscaler for manga/anime-style images using NCNN neural network framework. More information: https://github.com/nihui/waifu2x-ncnn-vulkan. Upscale an image: waifu2x-ncnn-vulkan -i {{path/to/input_file}} -o {{path/to/output_file}} Upscale an image by a custom scale factor and denoise it: waifu2x-ncnn-vulkan -i {{path/to/input_file}} -o {{path/to/output_file}} -s {{1|2|4|8|16|32}} -n {{-1|0|1|2|3}} Save the upscaled image in a specific format: waifu2x-ncnn-vulkan -i {{path/to/input_file}} -o {{path/to/output_file}} -f {{jpg|png|webp}}
wait Wait for a process to complete before proceeding. More information: https://manned.org/wait. Wait for a process to finish given its process ID (PID) and return its exit status: wait {{pid}} Wait for all processes known to the invoking shell to finish: wait
waitress-serve Pure Python WSGI HTTP Server. More information: https://docs.pylonsproject.org/projects/waitress/en/latest/runner.html. Run a Python web app: waitress-serve {{import.path:wsgi_func}} Listen on port 8080 on localhost: waitress-serve --listen={{localhost}}:{{8080}} {{import.path:wsgi_func}} Start waitress on a Unix socket: waitress-serve --unix-socket={{path/to/socket}} {{import.path:wsgi_func}} Use 4 threads to process requests: waitress-serve --threads={{4}} {{import.path:wsgifunc}} Call a factory method that returns a WSGI object: waitress-serve --call {{import.path.wsgi_factory}} Set the URL scheme to HTTPS: waitress-serve --url-scheme={{https}} {{import.path:wsgi_func}}
wal A tool to create color schemes based on the dominant colors of a wallpaper. More information: https://github.com/dylanaraps/pywal. Preview color scheme: wal --preview {{image.png}} Create color scheme: wal -i {{image.png}} Create a light color scheme: wal -i {{image.png}} -l Skip setting the desktop wallpaper: wal -i {{image.png}} -n Skip setting the terminal colors: wal -i {{image.png}} -s Restore the previously generated color scheme and wallpaper: wal -R
wapm The WebAssembly package manager. More information: https://wapm.io/help/reference. Interactively create a new wapm.toml file: wapm init Download all the packages listed as dependencies in wapm.toml: wapm install Download a specific version of a package and add it to the list of dependencies in wapm.toml: wapm install {{package}}@{{version}} Download a package and install it globally: wapm install --global {{package}} Uninstall a package and remove it from the list of dependencies in wapm.
warp-cli Official command-line client for Cloudflare’s WARP service. More information: https://developers.cloudflare.com/warp-client/. Register the current device to WARP (must be run before first connection): warp-cli register Connect to WARP: warp-cli connect Disconnect from WARP: warp-cli disconnect Display the WARP connection status: warp-cli status Display help: warp-cli help Display help for a subcommand: warp-cli help {{subcommand}}
warp-diag Diagnostic and feedback tool for Cloudflare’s WARP service. See also: warp-cli. More information: https://developers.cloudflare.com/warp-client/. Generate a zip file with information about the system configuration and the WARP connection: warp-diag Generate a zip file with debug information including a timestamp to the output filename: warp-diag --add-ts Save the output file under a specific directory: warp-diag --output {{path/to/directory}} Submit a new feedback to Cloudflare’s WARP interactively: warp-diag feedback
wasm-objdump Display information from WebAssembly binaries. More information: https://github.com/WebAssembly/wabt. Display the section headers of a given binary: wasm-objdump -h {{file.wasm}} Display the entire disassembled output of a given binary: wasm-objdump -d {{file.wasm}} Display the details of each section: wasm-objdump --details {{file.wasm}} Display the details of a given section: wasm-objdump --section '{{import}}' --details {{file.wasm}}
wasm-opt Optimize WebAssembly binary files. More information: https://github.com/webassembly/binaryen. Apply default optimizations and write to a given file: wasm-opt -O {{input.wasm}} -o {{output.wasm}} Apply all optimizations and write to a given file (takes more time, but generates optimal code): wasm-opt -O4 {{input.wasm}} -o {{output.wasm}} Optimize a file for size: wasm-opt -Oz {{input.wasm}} -o {{output.wasm}} Print the textual representation of the binary to console: wasm-opt {{input.wasm}} --print
wasm2c Convert a file from the WebAssembly binary format to a C source file and header. More information: https://github.com/WebAssembly/wabt. Convert a file to a C source file and header and display it to the console: wasm2c {{file.wasm}} Write the output to a given file (file.h gets additionally generated): wasm2c {{file.wasm}} -o {{file.c}}
wasm2wat Convert a file from the WebAssembly binary format to the text format. More information: https://github.com/WebAssembly/wabt. Convert a file to the text format and display it to the console: wasm2wat {{file.wasm}} Write the output to a given file: wasm2wat {{file.wasm}} -o {{file.wat}}
wat2wasm Convert a file from the WebAssembly text format to the binary format. More information: https://github.com/WebAssembly/wabt. Parse and check a file for errors: wat2wasm {{file.wat}} Write the output binary to a given file: wat2wasm {{file.wat}} -o {{file.wasm}} Display simplified representation of every byte: wat2wasm -v {{file.wat}}
watch Execute a program periodically, showing output fullscreen. More information: https://manned.org/watch. Repeatedly run a command and show the result: watch {{command}} Re-run a command every 60 seconds: watch -n {{60}} {{command}} Monitor the contents of a directory, highlighting differences as they appear: watch -d {{ls -l}} Repeatedly run a pipeline and show the result: watch '{{command_1}} | {{command_2}} | {{command_3}}'
watchexec Run arbitrary commands when files change. More information: https://github.com/watchexec/watchexec. Call ls -la when any file in the current directory changes: watchexec {{ls -la}} Run make when any JavaScript, CSS and HTML file in the current directory changes: watchexec --exts {{js,css,html}} make Run make when any file in the lib or src directory changes: watchexec --watch {{lib}} --watch {{src}} {{make}} Call/restart my_server when any file in the current directory changes, sending SIGKILL to stop the child process: watchexec --restart --stop-signal {{SIGKILL}} {{my_server}}
watson A wonderful CLI to track your time. More information: https://github.com/TailorDev/Watson. Start monitoring time in project: watson start {{project}} Start monitoring time in project with tags: watson start {{project}} +{{tag}} Stop monitoring time for the current project: watson stop Display the latest working sessions: watson log Edit most recent frame: watson edit Remove most recent frame: watson remove
wc Count lines, words, and bytes. More information: https://www.gnu.org/software/coreutils/wc. Count all lines in a file: wc --lines {{path/to/file}} Count all words in a file: wc --words {{path/to/file}} Count all bytes in a file: wc --bytes {{path/to/file}} Count all characters in a file (taking multi-byte characters into account): wc --chars {{path/to/file}} Count all lines, words and bytes from stdin: {{find .}} | wc Count the length of the longest line in number of characters: wc --max-line-length {{path/to/file}}
weasyprint Render HTML to PDF or PNG. More information: https://weasyprint.org/. Render an HTML file to PDF: weasyprint {{path/to/input.html}} {{path/to/output}}.pdf Render an HTML file to PNG, including an additional user stylesheet: weasyprint {{path/to/input.html}} {{path/to/output}}.png --stylesheet {{path/to/stylesheet.css}} Output additional debugging information when rendering: weasyprint {{path/to/input.html}} {{path/to/output}}.pdf --verbose Specify a custom resolution when outputting to PNG: weasyprint {{path/to/input.html}} {{path/to/output}}.png --resolution {{300}} Specify a base URL for relative URLs in the input HTML file: weasyprint {{path/to/input.
web-ext A command-line tool for managing web extension development. More information: https://github.com/mozilla/web-ext. Run the web extension in the current directory in Firefox: web-ext run Run a web extension from a specific directory in Firefox: web-ext run --source-dir {{path/to/directory}} Display verbose execution output: web-ext run --verbose Run a web extension in Firefox Android: web-ext run --target firefox-android Lint the manifest and source files for errors: web-ext lint Build and package the extension: web-ext build
webpack Bundle a web project’s js files and other assets into a single output file. More information: https://webpack.js.org. Create a single output file from an entry point file: webpack {{app.js}} {{bundle.js}} Load CSS files too from the JavaScript file (this uses the CSS loader for .css files): webpack {{app.js}} {{bundle.js}} --module-bind '{{css=css}}' Pass a config file (with e.g. the entry script and the output filename) and show compilation progress: webpack --config {{webpack.
webstorm The JetBrains JavaScript IDE. More information: https://www.jetbrains.com/help/webstorm/working-with-the-ide-features-from-command-line.html. Open the current directory in WebStorm: webstorm Open a specific directory in WebStorm: webstorm {{path/to/directory}} Open specific files in the LightEdit mode: webstorm -e {{path/to/file1 path/to/file2 ...}} Open and wait until done editing a specific file in the LightEdit mode: webstorm --wait -e {{path/to/file}} Open a file with the cursor at the specific line: webstorm --line {{line_number}} {{path/to/file}} Open and compare files (supports up to 3 files): webstorm diff {{path/to/file1}} {{path/to/file2}}
webtorrent The command-line interface for WebTorrent. Supports magnets, URLs, info hashes and .torrent files. More information: https://github.com/webtorrent/webtorrent-cli. Download a torrent: webtorrent download "{{torrent_id}}" Stream a torrent to VLC media player: webtorrent download "{{torrent_id}}" --vlc Stream a torrent to a Digital Living Network Alliance (DLNA) device: webtorrent download "{{torrent_id}}" --dlna Display a list of files for a specific torrent: webtorrent download "{{torrent_id}}" --select Specify a file index from the torrent to download: webtorrent download "{{torrent_id}}" --select {{index}}
weechat Command-line internet relay chat client with various features. More information: https://weechat.org/doc. Start WeeChat: weechat Do not load any plugin(s) on startup: weechat --no-plugin Do not load any script(s) on startup: weechat --no-script Do not connect to servers automatically: weechat --no-connect Write default terminal colors to stdout: weechat --colors
wfuzz A web application bruteforcer. More information: https://wfuzz.readthedocs.io/en/latest/user/basicusage.html. Directory and file bruteforce using the specified wordlist and also proxying the traffic: wfuzz -w {{path/to/file}} -p {{127.0.0.1:8080}} {{http://example.com/FUZZ}} Save the results to a file: wfuzz -w {{path/to/file}} -f {{filename}} {{http://example.com/FUZZ}} Show colorized output while only showing the declared response codes in the output: wfuzz -c -w {{path/to/file}} --sc {{200,301,302}} {{http://example.com/FUZZ}} Use a custom header to fuzz subdomains while hiding specific response codes and word counts.
wget Download files from the Web. Supports HTTP, HTTPS, and FTP. More information: https://www.gnu.org/software/wget. Download the contents of a URL to a file (named “foo” in this case): wget {{https://example.com/foo}} Download the contents of a URL to a file (named “bar” in this case): wget --output-document {{bar}} {{https://example.com/foo}} Download a single web page and all its resources with 3-second intervals between requests (scripts, stylesheets, images, etc.): wget --page-requisites --convert-links --wait=3 {{https://example.
where Reports all known instances of a command. It could be an executable in the PATH environment variable, an alias, or a shell builtin. More information: https://zsh.sourceforge.io/Doc/Release/Shell-Builtin-Commands.html. Find all instances of a command: where {{command}}
whereis Locate the binary, source, and manual page files for a command. More information: https://manned.org/whereis. Locate binary, source and man pages for ssh: whereis {{ssh}} Locate binary and man pages for ls: whereis -bm {{ls}} Locate source of gcc and man pages for Git: whereis -s {{gcc}} -m {{git}} Locate binaries for gcc in /usr/bin/ only: whereis -b -B {{/usr/bin/}} -f {{gcc}} Locate unusual binaries (those that have more or less than one binary on the system): whereis -u *
which Locate a program in the user’s path. More information: https://manned.org/which. Search the PATH environment variable and display the location of any matching executables: which {{executable}} If there are multiple executables which match, display all: which -a {{executable}}
while Simple shell loop. More information: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_09_04_09. Read stdin and perform an action on every line: while read line; do echo "$line"; done Execute a command forever once every second: while :; do {{command}}; sleep 1; done
whisper Convert audio files to txt, vtt, srt, tsv and json. More information: https://github.com/openai/whisper. Convert a specific audio file to all of the given file formats: whisper {{path/to/audio.mp3}} Convert an audio file specifying the output format of the converted file: whisper {{path/to/audio.mp3}} --output_format {{txt}} Convert an audio file using a specific model for conversion: whisper {{path/to/audio.mp3}} --model {{tiny.en,tiny,base.en,base,small.en,small,medium.en,medium,large-v1,large-v2,large}} Convert an audio file specifying which language the audio file is in to reduce conversion time: whisper {{path/to/audio.
who Display who is logged in and related data (processes, boot time). More information: https://www.gnu.org/software/coreutils/who. Display the username, line, and time of all currently logged-in sessions: who Display information only for the current terminal session: who am i Display all available information: who -a Display all available information with table headers: who -a -H
whoami Print the username associated with the current effective user ID. More information: https://www.gnu.org/software/coreutils/whoami. Display currently logged username: whoami Display the username after a change in the user ID: sudo whoami
whois Command-line client for the WHOIS (RFC 3912) protocol. More information: https://github.com/rfc1036/whois. Get information about a domain name: whois {{example.com}} Get information about an IP address: whois {{8.8.8.8}} Get abuse contact for an IP address: whois -b {{8.8.8.8}}
wipeclean Clear the terminal screen using an animated wiper. More information: https://github.com/JeanJouliaCode/wipeClean. Clear the terminal screen: wipeclean Set the animation speed in frames per second (defaults to 150): wipeclean --speed {{speed}}
wondershaper Allows the user to limit the bandwidth of one or more network adapters. More information: https://github.com/magnific0/wondershaper#usage. Display [h]elp: wondershaper -h Show the current [s]tatus of a specific [a]dapter: wondershaper -s -a {{adapter_name}} Clear limits from a specific [a]dapter: wondershaper -c -a {{adapter_name}} Set a specific maximum [d]ownload rate (in Kbps): wondershaper -a {{adapter_name}} -d {{1024}} Set a specific maximum [u]pload rate (in Kbps): wondershaper -a {{adapter_name}} -u {{512}} Set a specific maximum [d]ownload rate and [u]pload rate (in Kpbs): wondershaper -a {{adapter_name}} -d {{1024}} -u {{512}}
wordgrinder Command-line word processor. More information: https://cowlark.com/wordgrinder. Start WordGrinder (loads a blank document by default): wordgrinder Open a given file: wordgrinder {{filename}} Show the menu: Alt + M
wormhole Get things from one computer to another, safely. More information: https://magic-wormhole.readthedocs.io. Send a file: wormhole send {{path/to/file}} Receive a file: wormhole receive {{wormhole_code}} Send raw text: wormhole send
wp The official command-line interface to manage WordPress instances. More information: https://wp-cli.org/. Print information about the operating system, shell, PHP, and WP-CLI (wp) installation: wp --info Update WP-CLI: wp cli update Download a fresh WordPress installation to current directory, optionally specifying the locale: wp core download --locale={{locale}} Create basic wpconfig file (assuming database on localhost): wp config create --dbname={{dbname}} --dbuser={{dbuser}} --dbpass={{dbpass}} Install and activate a WordPress plugin: wp plugin install {{plugin}} --activate
wpa_supplicant Manage protected wireless networks. More information: https://manned.org/wpa_supplicant.1. Join a protected wireless network: wpa_supplicant -i {{interface}} -c {{path/to/wpa_supplicant_conf.conf}} Join a protected wireless network and run it in a daemon: wpa_supplicant -B -i {{interface}} -c {{path/to/wpa_supplicant_conf.conf}}
wpaclean Clean capture files to get only the 4-way handshake and a beacon. Part of Aircrack-ng network software suite. More information: https://manned.org/wpaclean.1. Clean capture and save only the 4-way handshake and a beacon in the result: wpaclean {{path/to/result.cap}} {{path/to/capture.cap}} Clean multiple captures and save 4-way handshakes and beacons in the result: wpaclean {{path/to/result.cap}} {{path/to/capture1.cap path/to/capture2.cap ...}}
wpm Typeracer-like console app for measuring your WPM. More information: https://github.com/cslarsen/wpm. Start wpm: wpm Start wpm with short texts: wpm --short Start wpm using a specific text file: wpm --load {{path/to/file.txt}} Tag your race scores: wpm --tag {{tag_name}} Show score statistics grouped by tags: wpm --stats Start wpm with monochrome colors: wpm --monochrome
wpscan WordPress vulnerability scanner. More information: https://github.com/wpscanteam/wpscan. Update the vulnerability database: wpscan --update Scan a WordPress website: wpscan --url {{url}} Scan a WordPress website, using random user agents and passive detection: wpscan --url {{url}} --stealthy Scan a WordPress website, checking for vulnerable plugins and specifying the path to the wp-content directory: wpscan --url {{url}} --enumerate {{vp}} --wp-content-dir {{remote/path/to/wp-content}} Scan a WordPress website through a proxy: wpscan --url {{url}} --proxy {{protocol://ip:port}} --proxy-auth {{username:password}}
wrangler Cloudflare Workers command-line tool. More information: https://developers.cloudflare.com/workers/. Initialize a project with a skeleton configuration: wrangler init {{project_name}} Authenticate with Cloudflare: wrangler login Start a local development server: wrangler dev --host {{hostname}} Publish the worker script: wrangler publish Aggregate logs from the production worker: wrangler tail
write Write a message on the terminal of a specified logged in user (ctrl-C to stop writing messages). Use the who command to find out all terminal_ids of all active users active on the system. See also mesg. More information: https://manned.org/write. Send a message to a given user on a given terminal id: write {{username}} {{terminal_id}} Send message to “testuser” on terminal /dev/tty/5: write {{testuser}} {{tty/5}} Send message to “johndoe” on pseudo terminal /dev/pts/5: write {{johndoe}} {{pts/5}}
wrk HTTP benchmarking tool. More information: https://github.com/wg/wrk. Run a benchmark for 30 seconds, using 12 threads, and keeping 400 HTTP connections open: wrk -t{{12}} -c{{400}} -d{{30s}} "{{http://127.0.0.1:8080/index.html}}" Run a benchmark with a custom header: wrk -t{{2}} -c{{5}} -d{{5s}} -H "{{Host: example.com}}" "{{http://example.com/index.html}}" Run a benchmark with a request timeout of 2 seconds: wrk -t{{2}} -c{{5}} -d{{5s}} --timeout {{2s}} "{{http://example.com/index.html}}"
wuzz Tool to interactively inspect HTTP requests and responses. More information: https://github.com/asciimoo/wuzz. Start wuzz: wuzz Display help information: F1 Send an HTTP request: Ctrl + R Switch to the next view: Ctrl + J, Tab Switch to the previous view: Ctrl + K, Shift + Tab
x_x View Excel and CSV files. More information: https://github.com/kristianperkins/x_x. View an XLSX or CSV file: x_x {{file.xlsx|file.csv}} View an XLSX or CSV file, using the first row as table headers: x_x -h {{0}} {{file.xlsx|file.csv}} View a CSV file with unconventional delimiters: x_x --delimiter={{';'}} --quotechar={{'|'}} {{file.csv}}
x11docker Securely run GUI applications and desktop UIs in Docker containers. See also xephyr. More information: https://github.com/mviereck/x11docker. Launch VLC in a container: x11docker --pulseaudio --share={{$HOME/Videos}} {{jess/vlc}} Launch Xfce in a window: x11docker --desktop {{x11docker/xfce}} Launch GNOME in a window: x11docker --desktop --gpu --init={{systemd}} {{x11docker/gnome}} Launch KDE Plasma in a window: x11docker --desktop --gpu --init={{systemd}} {{x11docker/kde-plasma}} Display help: x11docker --help
xar Manage .xar archives. More information: https://manned.org/xar. Create a xar archive of all files in a given directory: xar -cf {{archive.xar}} {{path/to/directory}} List the contents of a given xar archive: xar -tf {{archive.xar}} Extract the contents of a given xar archive to the current directory: xar -xf {{archive.xar}}
xargs Execute a command with piped arguments coming from another command, a file, etc. The input is treated as a single block of text and split into separate pieces on spaces, tabs, newlines and end-of-file. More information: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/xargs.html. Run a command using the input data as arguments: {{arguments_source}} | xargs {{command}} Run multiple chained commands on the input data: {{arguments_source}} | xargs sh -c "{{command1}} && {{command2}} | {{command3}}" Delete all files with a .
xcaddy The custom build tool for the Caddy Web Server. More information: https://github.com/caddyserver/xcaddy. Build Caddy server from source: xcaddy build Build Caddy server with a specific version (defaults to latest): xcaddy build {{version}} Build Caddy with a specific module: xcaddy build --with {{module_name}} Build Caddy and output to a specific file: xcaddy build --output {{path/to/file}} Build and run Caddy for a development plugin in the current directory: xcaddy run Build and run Caddy for a development plugin using a specific Caddy config: xcaddy run --config {{path/to/file}}
xcv Cut, copy, and paste in the command-line. More information: https://github.com/busterc/xcv. Cut a file: xcv x {{input_file}} Copy a file: xcv c {{input_file}} Paste a file: xcv v {{output_file}} List files available for pasting: xcv l
xdelta Delta encoding utility. Often used for applying patches to binary files. More information: http://xdelta.org. Apply a patch: xdelta -d -s {{path/to/input_file}} {{path/to/delta_file.xdelta}} {{path/to/output_file}} Create a patch: xdelta -e -s {{path/to/old_file}} {{path/to/new_file}} {{path/to/output_file.xdelta}}
xe Execute a command once for each line piped from another command or file. More information: https://github.com/leahneukirchen/xe. Run a command once for each line of input data as arguments: {{arguments_source}} | xe {{command}} Execute the commands, replacing any occurrence of the placeholder (marked as {}) with the input line: {{arguments_source}} | xe {{command}} {} {{optional_extra_arguments}} Execute a shellscript, joining every N lines into a single call: echo -e 'a\nb' | xe -N{{2}} -s 'echo $2 $1'
Xephyr A nested X server that runs as an X application. More information: https://manned.org/xserver-xephyr. Create a black window with display ID “:2”: Xephyr -br -ac -noreset -screen {{800x600}} {{:2}} Start an X application on the new screen: DISPLAY=:2 {{command_name}}
xetex Compile a PDF document from XeTeX source files. More information: https://www.tug.org/xetex/. Compile a PDF document: xetex {{source.tex}} Compile a PDF document, specifying an output directory: xetex -output-directory={{path/to/directory}} {{source.tex}} Compile a PDF document, exiting if errors occur: xetex -halt-on-error {{source.tex}}
xev Print contents of X events. More information: https://gitlab.freedesktop.org/xorg/app/xev. Monitor all occurring X events: xev Monitor all X events of the root window instead of creating a new one: xev -root Monitor all X events of a particular window: xev -id {{window_id}} Monitor X events from a given category (can be specified multiple times): xev -event {{event_category}}
xgettext Extract gettext strings from code files. More information: https://www.gnu.org/software/gettext/manual/html_node/xgettext-Invocation.html. Scan file and output strings to messages.po: xgettext {{path/to/input_file}} Use a different output filename: xgettext --output {{path/to/output_file}} {{path/to/input_file}} Append new strings to an existing file: xgettext --join-existing --output {{path/to/output_file}} {{path/to/input_file}} Don’t add a header containing metadata to the output file: xgettext --omit-header {{path/to/input_file}}
xh Friendly and fast tool for sending HTTP requests. More information: https://github.com/ducaale/xh. Send a GET request: xh {{httpbin.org/get}} Send a POST request with a JSON body (key-value pairs are added to a top-level JSON object - e.g. {"name": "john", "age": 25}): xh post {{httpbin.org/post}} {{name=john}} {{age:=25}} Send a GET request with query parameters (e.g. first_param=5&second_param=true): xh get {{httpbin.org/get}} {{first_param==5}} {{second_param==true}} Send a GET request with a custom header: xh get {{httpbin.
xidel Download and extract data from HTML/XML pages as well as JSON APIs. More information: https://www.videlibri.de/xidel.html. Print all URLs found by a Google search: xidel {{https://www.google.com/search?q=test}} --extract "//a/extract(@href, 'url[?]q=([^&]+)&', 1)[. != '']" Print the title of all pages found by a Google search and download them: xidel {{https://www.google.com/search?q=test}} --follow "{{//a/extract(@href, 'url[?]q=([^&]+)&', 1)[. != '']}}" --extract {{//title}} --download {{'{$host}/'}} Follow all links on a page and print the titles, with XPath: xidel {{https://example.
xkcdpass A flexible and scriptable password generator which generates strong passphrases. Inspired by XKCD 936. More information: https://github.com/redacted/XKCD-password-generator. Generate one passphrase with the default options: xkcdpass Generate one passphrase whose first letters of each word match the provided argument: xkcdpass -a {{acrostic}} Generate passwords interactively: xkcdpass -i
xkill Kill a window interactively in a graphical session. See also kill and killall. More information: https://www.x.org/releases/current/doc/man/man1/xkill.1.xhtml. Display a cursor to kill a window when pressing the left mouse button (press any other mouse button to cancel): xkill Display a cursor to select a window to kill by pressing any mouse button: xkill -button any
xml XMLStarlet Toolkit: Query, edit, check, convert and transform XML documents. This command also has documentation about its subcommands, e.g. xml validate. More information: http://xmlstar.sourceforge.net/docs.php. Display general help, including the list of subcommands: xml --help Execute a subcommand with input from a file or URI, printing to stdout: xml {{subcommand}} {{options}} {{path/to/input.xml|URI}} Execute a subcommand using stdin and stdout: xml {{subcommand}} {{options}} Execute a subcommand with input from a file or URI and output to a file: xml {{subcommand}} {{options}} {{path/to/input.
xml canonic Make XML documents canonical. More information: http://xmlstar.sourceforge.net/docs.php. Make an XML document canonical, preserving comments: xml canonic {{path/to/input.xml|URI}} > {{path/to/output.xml}} Make an XML document canonical, removing comments: xml canonic --without-comments {{path/to/input.xml|URI}} > {{path/to/output.xml}} Make XML exclusively canonical, using an XPATH from a file, preserving comments: xml canonic --exc-with-comments {{path/to/input.xml|URI}} {{path/to/c14n.xpath}} Display help for the canonic subcommand: xml canonic --help
xml depyx Convert a PYX (ESIS - ISO 8879) document to XML format. More information: http://xmlstar.sourceforge.net/docs.php. Convert a PYX (ESIS - ISO 8879) document to XML format: xml depyx {{path/to/input.pyx|URI}} > {{path/to/output.xml}} Convert a PYX document from stdin to XML format: cat {{path/to/input.pyx}} | xml depyx > {{path/to/output.xml}} Display help for the depyx subcommand: xml depyx --help
xml edit Edit an XML document. More information: http://xmlstar.sourceforge.net/docs.php. Delete elements matching an XPATH from an XML document: xml edit --delete "{{XPATH1}}" {{path/to/input.xml|URI}} Move an element node of an XML document from XPATH1 to XPATH2: xml edit --move "{{XPATH1}}" "{{XPATH2}}" {{path/to/input.xml|URI}} Rename all attributes named “id” to “ID”: xml edit --rename "{{//*/@id}}" -v "{{ID}}" {{path/to/input.xml|URI}} Rename sub-elements of the element “table” that are named “rec” to “record”: xml edit --rename "{{/xml/table/rec}}" -v "{{record}}" {{path/to/input.
xml elements Extract elements and display the structure of an XML document. More information: http://xmlstar.sourceforge.net/docs.php. Extract elements from an XML document (producing XPATH expressions): xml elements {{path/to/input.xml|URI}} > {{path/to/elements.xpath}} Extract elements and their attributes from an XML document: xml elements -a {{path/to/input.xml|URI}} > {{path/to/elements.xpath}} Extract elements and their attributes and values from an XML document: xml elements -v {{path/to/input.xml|URI}} > {{path/to/elements.xpath}} Print sorted unique elements from an XML document to see its structure: xml elements -u {{path/to/input.
xml escape Escape special XML characters, e.g. <a1> → <a1>. More information: http://xmlstar.sourceforge.net/doc/xmlstarlet.pdf. Escape special XML characters in a string: xml escape "{<a1>}" Escape special XML characters from stdin: echo "{<a1>}" | xml escape Display help for the escape subcommand: xml escape --help
xml format Format an XML document. More information: http://xmlstar.sourceforge.net/docs.php. Format an XML document, indenting with tabs: xml format --indent-tab {{path/to/input.xml|URI}} > {{path/to/output.xml}} Format an HTML document, indenting with 4 spaces: xml format --html --indent-spaces {{4}} {{path/to/input.html|URI}} > {{path/to/output.html}} Recover parsable parts of a malformed XML document, without indenting: xml format --recover --noindent {{path/to/malformed.xml|URI}} > {{path/to/recovered.xml}} Format an XML document from stdin, removing the DOCTYPE declaration: cat {{path\to\input.xml}} | xml format --dropdtd > {{path/to/output.
xml list List a directory’s contents (like ls) in XML format. More information: http://xmlstar.sourceforge.net/docs.php. Write the current directory’s listing to an XML document: xml list > {{path/to/dir_list.xml}} Write the specified directory’s listing to an XML document: xml list {{path/to/directory}} > {{path/to/dir_list.xml}} Display help for the list subcommand: xml list --help
xml pyx Convert an XML document to PYX (ESIS - ISO 8879) format. More information: http://xmlstar.sourceforge.net/docs.php. Convert an XML document to PYX format: xml pyx {{path/to/input.xml|URI}} > {{path/to/output.pyx}} Convert an XML document from stdin to PYX format: cat {{path/to/input.xml}} | xml pyx > {{path/to/output.pyx}} Display help for the pyx subcommand: xml pyx --help
xml select Select from XML documents using XPATHs. Tip: use xml elements to display the XPATHs of an XML document. More information: http://xmlstar.sourceforge.net/docs.php. Select all elements matching “XPATH1” and print the value of their sub-element “XPATH2”: xml select --template --match "{{XPATH1}}" --value-of "{{XPATH2}}" {{path/to/input.xml|URI}} Match “XPATH1” and print the value of “XPATH2” as text with new-lines: xml select --text --template --match "{{XPATH1}}" --value-of "{{XPATH2}}" --nl {{path/to/input.xml|URI}} Count the elements of “XPATH1”: xml select --template --value-of "count({{XPATH1}})" {{path/to/input.
xml transform Transform XML documents using XSLT. More information: http://xmlstar.sourceforge.net/docs.php. Transform an XML document using an XSL stylesheet, passing one XPATH parameter and one literal string parameter: xml transform {{path/to/stylesheet.xsl}} -p "{{Count='count(/xml/table/rec)'}}" -s {{Text="Count="}} {{path/to/input.xml|URI}} Display help for the transform subcommand: xml transform --help
xml unescape Unescape special XML characters, e.g. <a1> → <a1>. More information: http://xmlstar.sourceforge.net/docs.php. Unescape special XML characters from a string: xml unescape "{{<a1>}}" Unescape special XML characters from stdin: echo "{{<a1>}}" | xml unescape Display help for the unescape subcommand: xml escape --help
xml validate Validate XML documents. More information: http://xmlstar.sourceforge.net/docs.php. Validate one or more XML documents for well-formedness only: xml validate {{path/to/input1.xml|URI}} {{input2.xml ...}} Validate one or more XML documents against a Document Type Definition (DTD): xml validate --dtd {{path/to/schema.dtd}} {{path/to/input1.xml|URI}} {{input2.xml ...}} Validate one or more XML documents against an XML Schema Definition (XSD): xml validate --xsd {{path/to/schema.xsd}} {{path/to/input1.xml|URI}} {{input2.xml ...}} Validate one or more XML documents against a Relax NG schema (RNG): xml validate --relaxng {{path/to/schema.
xmllint XML parser and linter that supports XPath, a syntax for navigating XML trees. More information: https://manned.org/xmllint. Return all nodes (tags) named “foo”: xmllint --xpath "//{{foo}}" {{source_file.xml}} Return the contents of the first node named “foo” as a string: xmllint --xpath "string(//{{foo}})" {{source_file.xml}} Return the href attribute of the second anchor element in an HTML file: xmllint --html --xpath "string(//a[2]/@href)" webpage.xhtml Return human-readable (indented) XML from file: xmllint --format {{source_file.xml}}
xmlstarlet A command-line XML/XSLT toolkit. Note: You will likely need to know XPath: https://developer.mozilla.org/en-US/docs/Web/XPath. More information: https://xmlstar.sourceforge.net/docs.php. Format an XML document and print to stdout: xmlstarlet format {{path/to/file.xml}} XML document can also be piped from stdin: {{cat path/to/file.xml}} | xmlstarlet format Print all nodes that match a given XPath: xmlstarlet select --template --copy-of {{xpath}} {{path/to/file.xml}} Insert an attribute to all matching nodes, and print to stdout (source file is unchanged): xmlstarlet edit --insert {{xpath}} --type attr --name {{attribute_name}} --value {{attribute_value}} {{path/to/file.
xmlto Apply an XSL stylesheet to an XML document. More information: https://pagure.io/xmlto. Convert a DocBook XML document to PDF format: xmlto {{pdf}} {{document.xml}} Convert a DocBook XML document to HTML format and store the resulting files in a separate directory: xmlto -o {{path/to/html_files}} {{html}} {{document.xml}} Convert a DocBook XML document to a single HTML file: xmlto {{html-nochunks}} {{document.xml}} Specify a stylesheet to use while converting a DocBook XML document: xmlto -x {{stylesheet.
xo A pluggable, zero-configuration linting utility for JavaScript. More information: https://github.com/xojs/xo. Lint files in the “src” directory: xo Lint a given set of files: xo {{file1}}.js {{file2}}.js Automatically fix any lint issues found: xo --fix Lint using spaces as indentation instead of tabs: xo --space Lint using the “prettier” code style: xo --prettier
xonsh Python-powered, cross-platform, Unix-gazing shell. Write and mix sh/Python code in Xonsh (pronounced conch). More information: https://xon.sh. Start an interactive shell session: xonsh Execute a single command and then exit: xonsh -c "{{command}}" Run commands from a script file and then exit: xonsh {{path/to/script_file.xonsh}} Define environment variables for the shell process: xonsh -D{{name1}}={{value1}} -D{{name2}}={{value2}} Load the specified .xonsh or .json configuration files: xonsh --rc {{path/to/file1.xonsh}} {{path/to/file2.json}} Skip loading the .xonshrc configuration file: xonsh --no-rc
xpdf Portable Document Format (PDF) file viewer. More information: https://www.xpdfreader.com/xpdf-man.html. Open a PDF file: xpdf {{path/to/file.pdf}} Open a specific page in a PDF file: xpdf {{path/to/file.pdf}} :{{page_number}} Open a compressed PDF file: xpdf {{path/to/file.pdf.tar}} Open a PDF file in fullscreen mode: xpdf -fullscreen {{path/to/file.pdf}} Specify the initial zoom: xpdf -z {{75}}% {{path/to/file.pdf}} Specify the initial zoom at page width or full page: xpdf -z {{page|width}} {{path/to/file.pdf}}
xplr Terminal-based file system explorer. More information: https://xplr.dev. Open a directory: xplr {{path/to/directory}} Focus on a file: xplr {{path/to/file}} Focus on a directory: xplr --force-focus {{path/to/directory}} Open a directory with specific files or directories selected: xplr {{path/to/directory}} {{path/to/selected_file_or_directory1}} {{path/to/selected_file_or_directory2}}
xprop A tool for displaying window and font properties in an X server. More information: https://manned.org/xprop. Display the name of the root window: xprop -root WM_NAME Display the window manager hints for a window: xprop -name "{{window_name}}" WM_HINTS Display the point size of a font: xprop -font "{{font_name}}" POINT_SIZE Display all the properties of the window with the id 0x200007: xprop -id {{0x200007}}
xsp Mono ASP.NET Web Server. More information: https://www.mono-project.com/docs/web/aspnet/. Listen on all interfaces (0.0.0.0) and port 8080: xsp Listen on a specific IP address and port: xsp --address {{127.0.0.1}} --port {{8000}}
xsv A CSV command-line toolkit written in Rust. More information: https://github.com/BurntSushi/xsv. Inspect the headers of a file: xsv headers {{path/to/file.csv}} Count the number of entries: xsv count {{path/to/file.csv}} Get an overview of the shape of entries: xsv stats {{path/to/file.csv}} | xsv table Select a few columns: xsv select {{column_a,column_b}} {{path/to/file.csv}} Show 10 random entries: xsv sample {{10}} {{path/to/file.csv}} Join a column from one file to another: xsv join --no-case {{column_a}} {{path/to/file/a.
xxd Create a hexadecimal representation (hexdump) from a binary file, or vice-versa. More information: https://manned.org/xxd. Generate a hexdump from a binary file and display the output: xxd {{input_file}} Generate a hexdump from a binary file and save it as a text file: xxd {{input_file}} {{output_file}} Display a more compact output, replacing consecutive zeros (if any) with a star: xxd -a {{input_file}} Display the output with 10 columns of one octet (byte) each: xxd -c {{10}} {{input_file}}
xxh Bring your shell with all of your customizations through SSH sessions. Note: xxh does not install anything into system directories on the target machine; removing ~/.xxh will clear all traces of xxh on the target machine. More information: https://github.com/xxh/xxh. Connect to a host and run the current shell: xxh "{{host}}" Install the current shell into the target machine without prompting: xxh "{{host}}" ++install Run the specified shell on the target machine: xxh "{{host}}" ++shell {{xonsh|zsh|fish|bash|osquery}}
xz Compress or decompress .xz and .lzma files. More information: https://manned.org/xz. Compress a file using xz: xz {{path/to/file}} Decompress an xz file: xz --decompress {{path/to/file.xz}} Compress a file using lzma: xz --format={{lzma}} {{path/to/file}} Decompress an lzma file: xz --decompress --format={{lzma}} {{path/to/file.lzma}} Decompress a file and write to stdout (implies --keep): xz --decompress --stdout {{path/to/file.xz}} Compress a file, but don’t delete the original: xz --keep {{path/to/file}} Compress a file using the fastest compression: xz -0 {{path/to/file}}
xzcat This command is an alias of xz --decompress --stdout. More information: https://manned.org/xzcat. View documentation for the original command: tldr xz
xzcmp Invokes cmp on files compressed with xz, lzma, gzip, bzip2, lzop, or zstd. All options specified are passed directly to cmp. More information: https://manned.org/xzcmp. Compare two specific files: xzcmp {{path/to/file1}} {{path/to/file2}}
xzdiff Invokes diff on files compressed with xz, lzma, gzip, bzip2, lzop, or zstd. All options specified are passed directly to diff. More information: https://manned.org/xzdiff. Compare files: xzdiff {{path/to/file1}} {{path/to/file2}} Compare files, showing the differences side by side: xzdiff --side-by-side {{path/to/file1}} {{path/to/file2}} Compare files and report only that they differ (no details on what is different): xzdiff --brief {{path/to/file1}} {{path/to/file2}} Compare files and report when the files are the same: xzdiff --report-identical-files {{path/to/file1}} {{path/to/file2}}
xzegrep This command is an alias of xzgrep --extended-regexp. See also: egrep. View documentation for the original command: tldr xzgrep
xzfgrep This command is an alias of xzgrep --fixed-strings. See also: fgrep. View documentation for the original command: tldr xzgrep
xzgrep Search files possibly compressed with xz, lzma, gzip, bzip2, lzop, or zstd using regular expressions. See also: grep. More information: https://manned.org/xzgrep. Search for a pattern within a file: xzgrep "{{search_pattern}}" {{path/to/file}} Search for an exact string (disables regular expressions): xzgrep --fixed-strings "{{exact_string}}" {{path/to/file}} Search for a pattern in all files showing line numbers of matches: xzgrep --line-number "{{search_pattern}}" {{path/to/file}} Use extended regular expressions (supports ?, +, {}, () and |), in case-insensitive mode: xzgrep --extended-regexp --ignore-case "{{search_pattern}}" {{path/to/file}}
xzless Display text from xz and lzma compressed files. See also: less. More information: https://manned.org/xzless. View a compressed file: xzless {{path/to/file}} View a compressed file and display line numbers: xzless --LINE-NUMBERS {{path/to/file}} View a compressed file and quit if the entire file can be displayed on the first screen: xzless --quit-if-one-screen {{path/to/file}}
xzmore Display text from xz or lzma compressed files. Almost equivalent to xzless, except it respects the PAGER environment variable, uses more by default and you cannot pass options to the pager. More information: https://manned.org/xzmore. View a compressed file: xzmore {{path/to/file}}
yacas Yet Another Computer Algebra System. More information: http://www.yacas.org. Start an interactive yacas session: yacas While in a yacas session, execute a statement: {{Integrate(x)Cos(x)}}; While in a yacas session, display an example: {{Example()}}; Quit from a yacas session: {{quit}} Execute one or more yacas scripts (without terminal or prompts), then exit: yacas -p -c {{path/to/script1}} {{path/to/script2}} Execute and print the result of one statement, then exit: echo "{{Echo( Deriv(x)Cos(1/x) );}}" | yacas -p -c /dev/stdin
yacc Generate an LALR parser (in C) with a given formal grammar specification file. See also: bison. More information: https://manned.org/man/yacc.1p. Create a file y.tab.c containing the C parser code and compile the grammar file with all necessary constant declarations for values. (Constant declarations file y.tab.h is created only when the -d flag is used): yacc -d {{path/to/grammar_file.y}} Compile a grammar file containing the description of the parser and a report of conflicts generated by ambiguities in the grammar: yacc -d {{path/to/grammar_file.
yank Read input from stdin and display a selection interface that allows a field to be selected and copied to the clipboard. More information: https://manned.org/yank. Yank using the default delimiters (\f, \n, \r, \s, \t): {{sudo dmesg}} | yank Yank an entire line: {{sudo dmesg}} | yank -l Yank using a specific delimiter: {{echo hello=world}} | yank -d {{=}} Only yank fields matching a specific pattern: {{ps ux}} | yank -g "{{[0-9]+}}"
yapf Python style guide checker. More information: https://github.com/google/yapf. Display a diff of the changes that would be made, without making them (dry-run): yapf --diff {{path/to/file}} Format the file in-place and display a diff of the changes: yapf --diff --in-place {{path/to/file}} Recursively format all Python files in a directory, concurrently: yapf --recursive --in-place --style {{pep8}} --parallel {{path/to/directory}}
yard Documentation tool for Ruby. More information: https://yardoc.org/. Create the documentation: yard Create the documentation and save it to one file: yard --one-file List all undocumented objects: yard stats --list-undoc
yarn JavaScript and Node.js package manager alternative. More information: https://yarnpkg.com. Install a module globally: yarn global add {{module_name}} Install all dependencies referenced in the package.json file (the install is optional): yarn install Install a module and save it as a dependency to the package.json file (add --dev to save as a dev dependency): yarn add {{module_name}}@{{version}} Uninstall a module and remove it from the package.json file: yarn remove {{module_name}} Interactively create a package.
yarn-why Identifies why a Yarn package has been installed. More information: https://github.com/amio/yarn-why. Show why a Yarn package is installed: yarn-why {{package}}
ybacklight Manage screen backlight brightness. See also xbacklight. More information: https://github.com/pixelcmtd/ybacklight. Print current brightness and maximal brightness, shortened and separated by a slash: ybacklight Sc/Sm Set the brightness to 420: ybacklight s{{420}} Increase the brightness by 42 big steps (4200 by default): ybacklight Si{{42}} Decrease the brightness by 300: ybacklight d{{300}}
yesod Helper tool for Yesod, a Haskell-based web framework. All Yesod commands are invoked through the stack project manager. More information: https://github.com/yesodweb/yesod. Create a new scaffolded site, with SQLite as backend, in the my-project directory: stack new {{my-project}} {{yesod-sqlite}} Install the Yesod CLI tool within a Yesod scaffolded site: stack build yesod-bin cabal-install --install-ghc Start development server: stack exec -- yesod devel Touch files with altered Template Haskell dependencies: stack exec -- yesod touch
ykinfo Get basic information from a YubiKey. More information: https://developers.yubico.com/yubikey-personalization/Manuals/ykinfo.1.html. Display all information from YubiKey: ykinfo -a Get only serial in decimal from YubiKey: ykinfo -s -q Get capabilities from YubiKey: ykinfo -c
ykman The YubiKey Manager can be used to configure all aspects of the YubiKey. More information: https://docs.yubico.com/software/yubikey/tools/ykman/index.html. Get information from YubiKey: ykman info Get information for a given application from YubiKey: ykman {{fido|oath|openpgp|otp|piv}} info Get a list of enabled applications over NFC from YubiKey: ykman config nfc --list Enable application over USB on YubiKey: ykman config usb --enable {{OTP|U2F|FIDO2|OATH|PIV|OPENPGP|HSMAUTH}}
yolo The YOLO command-line interface lets you simply train, validate or infer models on various tasks and versions. More information: https://docs.ultralytics.com/cli/. Create a copy of the default configuration in your current working directory: yolo task=init Train the object detection, instance segment, or classification model with the specified configuration file: yolo task={{detect|segment|classify}} mode=train cfg={{path/to/config.yaml}}
you-get Download media contents (videos, audios, images) from the Web. More information: https://you-get.org. Print media information about a specific media on the web: you-get --info {{https://example.com/video?id=value}} Download a media from a specific URL: you-get {{https://example.com/video?id=value}} Search on Google Videos and download: you-get {{keywords}} Download a media to a specific location: you-get --output-dir {{path/to/directory}} --output-filename {{filename}} {{https://example.com/watch?v=value}} Download a media using a proxy: you-get --http-proxy {{proxy_server}} {{https://example.com/watch?v=value}}
youtube-dl Download videos from YouTube and other websites. More information: http://rg3.github.io/youtube-dl/. Download a video or playlist: youtube-dl '{{https://www.youtube.com/watch?v=oHg5SJYRHA0}}' List all formats that a video or playlist is available in: youtube-dl --list-formats '{{https://www.youtube.com/watch?v=Mwa0_nE9H7A}}' Download a video or playlist at a specific quality: youtube-dl --format "{{best[height<=480]}}" '{{https://www.youtube.com/watch?v=oHg5SJYRHA0}}' Download the audio from a video and convert it to an MP3: youtube-dl -x --audio-format {mp3} '{{url}}' Download the best quality audio and video and merge them: youtube-dl -f bestvideo+bestaudio '{{url}}'
youtube-viewer Command-line application for searching and playing videos from YouTube. More information: https://github.com/trizen/youtube-viewer. Search for a video: youtube-viewer {{search_term}} Log in to your YouTube account: youtube-viewer --login Watch a video with a specific URL in VLC: youtube-viewer --player={{vlc}} {{https://youtube.com/watch?v=dQw4w9WgXcQ}} Display a search prompt and play the selected video in 720p: youtube-viewer -{{7}}
yq A lightweight and portable command-line YAML processor. More information: https://mikefarah.gitbook.io/yq/. Output a YAML file, in pretty-print format (v4+): yq eval {{path/to/file.yaml}} Output a YAML file, in pretty-print format (v3): yq read {{path/to/file.yaml}} --colors Output the first element in a YAML file that contains only an array (v4+): yq eval '.[0]' {{path/to/file.yaml}} Output the first element in a YAML file that contains only an array (v3): yq read {{path/to/file.yaml}} '[0]'
yt-dlp A youtube-dl fork with additional features and fixes. Download videos from YouTube and other websites. More information: https://github.com/yt-dlp/yt-dlp. Download a video or playlist (with the default options from command below): yt-dlp "{https://www.youtube.com/watch?v=oHg5SJYRHA0}" List the available downloadable formats for a video: yt-dlp --list-formats "{https://www.youtube.com/watch?v=oHg5SJYRHA0}" Download a video with a defined format, in this case the best mp4 video available (default is “bv*+ba/b”): yt-dlp --format "{bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4]}" "{https://www.youtube.com/watch?v=oHg5SJYRHA0}" Extract audio from a video (requires ffmpeg or ffprobe): yt-dlp --extract-audio "{https://www.
z Tracks the most used (by frecency) directories and enables quickly navigating to them using string patterns or regular expressions. More information: https://github.com/rupa/z. Go to a directory that contains “foo” in the name: z {{foo}} Go to a directory that contains “foo” and then “bar”: z {{foo}} {{bar}} Go to the highest-ranked directory matching “foo”: z -r {{foo}} Go to the most recently accessed directory matching “foo”: z -t {{foo}}
zbarimg Scan and decode bar codes from image file(s). More information: http://zbar.sourceforge.net. Process an image file: zbarimg {{image_file}}
zcat Print data from gzip compressed files. More information: https://www.gnu.org/software/gzip/manual/gzip.html. Print the uncompressed contents of a gzipped file to stdout: zcat {{file.txt.gz}} Print compression details of a gzipped file to stdout: zcat -l {{file.txt.gz}}
zcmp Compare compressed files. More information: https://manned.org/zcmp. Invoke cmp on two files compressed via gzip: zcmp {{path/to/file1.gz}} {{path/to/file2.gz}} Compare a file to its gzipped version (assuming .gz exists already): zcmp {{path/to/file}}
zdb ZFS debugger. More information: https://manned.org/zdb. Show detailed configuration of all mounted ZFS zpools: zdb Show detailed configuration for a specific ZFS pool: zdb -C {{poolname}} Show statistics about number, size and deduplication of blocks: zdb -b {{poolname}}
zdiff Invoke diff on gzipped files. More information: https://manned.org/zdiff. Compare two files, uncompressing them if necessary: zdiff {{path/to/file1.gz}} {{path/to/file2.gz}} Compare a file to a gzipped archive with the same name: zdiff {{path/to/file}}
zeek Passive network traffic analyzer. Any output and log files will be saved to the current working directory. More information: https://docs.zeek.org/en/lts/quickstart.html#zeek-as-a-command-line-utility. Analyze live traffic from a network interface: sudo zeek --iface {{interface}} Analyze live traffic from a network interface and load custom scripts: sudo zeek --iface {{interface}} {{script1}} {{script2}} Analyze live traffic from a network interface, without loading any scripts: sudo zeek --bare-mode --iface {{interface}} Analyze live traffic from a network interface, applying a tcpdump filter: sudo zeek --filter {{path/to/filter}} --iface {{interface}}
zegrep Find extended regular expression patterns in compressed files using egrep. More information: https://www.unix.com/man-page/freebsd/1/zegrep/. Search for extended regular expressions (supporting ?, +, {}, () and |) in a compressed file (case-sensitive): zegrep "{{search_pattern}}" {{path/to/file}} Search for extended regular expressions (supporting ?, +, {}, () and |) in a compressed file (case-insensitive): zegrep --ignore-case "{{search_pattern}}" {{path/to/file}} Search for lines that do not match a pattern: zegrep --invert-match "{{search_pattern}}" {{path/to/file}} Print file name and line number for each match: zegrep --with-filename --line-number "{{search_pattern}}" {{path/to/file}}
zek Generate a Go struct from XML. More information: https://github.com/miku/zek. Generate a Go struct from a given XML from stdin and display output on stdout: cat {{path/to/input.xml}} | zek Generate a Go struct from a given XML from stdin and send output to a file: curl -s {{https://url/to/xml}} | zek -o {{path/to/output.go}} Generate an example Go program from a given XML from stdin and send output to a file: cat {{path/to/input.
zellij Terminal multiplexer with batteries included. See also tmux and screen. More information: https://zellij.dev/documentation/. Start a new named session: zellij --session {{name}} List existing sessions: zellij list-sessions Attach to the most recently used session: zellij attach Open a new pane (inside a zellij session): Alt + N Detach from the current session (inside a zellij session): Ctrl + O, D
zfgrep Matches fixed strings in possibly compressed files. Equivalent to grep -F with input decompressed first if necessary. More information: https://manned.org/zfgrep. Search for an exact string in a file: zfgrep {{search_string}} {{path/to/file}} Count the number of lines that match the given string in a file: zfgrep --count {{search_string}} {{path/to/file}} Show the line number in the file along with the matching lines: zfgrep --line-number {{search_string}} {{path/to/file}} Display all lines except those that contain the search string: zfgrep --invert-match {{search_string}} {{path/to/file}}
zfs Manage ZFS filesystems. More information: https://manned.org/zfs. List all available zfs filesystems: zfs list Create a new ZFS filesystem: zfs create {{pool_name/filesystem_name}} Delete a ZFS filesystem: zfs destroy {{pool_name/filesystem_name}} Create a Snapshot of a ZFS filesystem: zfs snapshot {{pool_name/filesystem_name}}@{{snapshot_name}} Enable compression on a filesystem: zfs set compression=on {{pool_name/filesystem_name}} Change mountpoint for a filesystem: zfs set mountpoint={{/my/mount/path}} {{pool_name/filesystem_name}}
zgrep Grep text patterns from files within compressed file (equivalent to grep -Z). More information: https://manned.org/zgrep. Grep a pattern in a compressed file (case-sensitive): zgrep {{pattern}} {{path/to/compressed/file}} Grep a pattern in a compressed file (case-insensitive): zgrep -i {{pattern}} {{path/to/compressed/file}} Output count of lines containing matched pattern in a compressed file: zgrep -c {{pattern}} {{path/to/compressed/file}} Display the lines which don’t have the pattern present (Invert the search function): zgrep -v {{pattern}} {{path/to/compressed/file}}
zig The Zig compiler and toolchain. More information: https://ziglang.org. Compile the project in the current directory: zig build Compile and run the project in the current directory: zig build run Initialize a zig build application: zig init-exe Initialize a zig build library: zig init-lib Create and run a test build: zig test {{path/to/file.zig}} Reformat Zig source into canonical form: zig fmt {{path/to/file.zig}} Use Zig as a drop-in C compiler: zig cc {{path/to/file.
zip Package and compress (archive) files into zip file. See also: unzip. More information: https://manned.org/zip. Add files/directories to a specific archive ([r]ecursively): zip -r {{path/to/compressed.zip}} {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} Remove files/directories from a specific archive ([d]elete): zip -d {{path/to/compressed.zip}} {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} Archive files/directories e cluding specified ones: zip -r {{path/to/compressed.zip}} {{path/to/file_or_directory1 path/to/file_or_directory2 ...}} -x {{path/to/excluded_files_or_directories}} Archive files/directories with a specific compression level (0 - the lowest, 9 - the highest): zip -r -{{0-9}} {{path/to/compressed.
zip2john A tool to extract password hashes from zip files for use with John the Ripper password cracker. This is a utility tool usually installed as part of the John the Ripper installation. More information: https://www.openwall.com/john/. Extract the password hash from an archive, listing all files in the archive: zip2john {{path/to/file.zip}} Extract the password hash using [o]nly a specific compressed file: zip2john -o {{path/to/compressed_file}} {{path/to/file.zip}} Extract the password hash from a compressed file to a specific file (for use with John the Ripper): zip2john -o {{path/to/compressed_file}} {{path/to/file.
zipalign Zip archive alignment tool. Part of the Android SDK build tools. More information: https://developer.android.com/studio/command-line/zipalign. Align the data of a ZIP file on 4-byte boundaries: zipalign {{4}} {{path/to/input.zip}} {{path/to/output.zip}} Check that a ZIP file is correctly aligned on 4-byte boundaries and display the results in a verbose manner: zipalign -v -c {{4}} {{path/to/input.zip}}
zipgrep Find patterns in files in a ZIP archive using extended regular expression (supports ?, +, {}, () and |). More information: https://manned.org/zipgrep. Search for a pattern within a ZIP archive: zipgrep "{{search_pattern}}" {{path/to/file.zip}} Print file name and line number for each match: zipgrep -H -n "{{search_pattern}}" {{path/to/file.zip}} Search for lines that do not match a pattern: zipgrep -v "{{search_pattern}}" {{path/to/file.zip}} Specify files inside a ZIP archive from search: zipgrep "{{search_pattern}}" {{path/to/file.
zipinfo List detailed information about the contents of a .zip file. More information: https://manned.org/zipinfo. List all files in a .zip file in long format (permissions, ownership, size, and modification date): zipinfo {{path/to/archive.zip}} List all files in a .zip file: zipinfo -1 {{path/to/archive.zip}}
zipnote View, add, or edit a zip archive’s comments. Files can also be renamed in the zip archive. More information: https://manned.org/zipnote. View the comments on a zip archive: zipnote {{path/to/file.zip}} Extract the comments on a zip archive to a file: zipnote {{path/to/file.zip}} > {{path/to/file.txt}} Add/Update comments in a zip archive from a file: zipnote -w {{path/to/file.zip}} < {{path/to/file.txt}}
zless View gzip and xz compressed files. More information: https://manned.org/zless. Page through a gzip compressed file with less: zless {{file.txt.gz}}
zlib-flate Raw zlib compression and decompression program. Part of qpdf. More information: https://manned.org/zlib-flate. Compress a file: zlib-flate -compress < {{path/to/input_file}} > {{path/to/compressed.zlib}} Uncompress a file: zlib-flate -uncompress < {{path/to/compressed.zlib}} > {{path/to/output_file}} Compress a file with a specified compression level. 0=Fastest (Worst), 9=Slowest (Best): zlib-flate -compress={{compression_level}} < {{path/to/input_file}} > {{path/to/compressed.zlib}}
zm A tool for managing articles of newspapers and blogs. More information: https://github.com/ZERMZeitung/zm2. Make a new draft: zm new Edit a draft: zm edit Publish a draft and commit it with git: zm publish
zmore View gzip compressed files with more. More information: https://manned.org/zmore. Open a compressed file: zmore {{path/to/file.txt.gz}} Display the next page of the file: <Space> Search for a pattern in the file (press n to go to next match): /{{regular_expression}} Exit: q Display interactive command help: h
zmv Move or rename files matching a specified extended glob pattern. See also zcp and zln. More information: http://zsh.sourceforge.net/Doc/Release/User-Contributions.html. Move files using a regular expression-like pattern: zmv '{{(*).log}}' '{{$1.txt}}' Preview the result of a move, without making any actual changes: zmv -n '{{(*).log}}' '{{$1.txt}}' Interactively move files, with a prompt before every change: zmv -i '{{(*).log}}' '{{$1.txt}}' Verbosely print each action as it’s being executed: zmv -v '{{(*).log}}' '{{$1.txt}}'
znew Recompress files from .Z to .gz format. More information: https://manned.org/znew. Recompress a file from .Z to .gz format: znew {{path/to/file1.Z}} Recompress multiple files and display the achieved size reduction % per file: znew -v {{path/to/file1.Z}} {{path/to/file2.Z}} {{path/to/file3.Z}} Recompress a file using the slowest compression method (for optimal compression): znew -9 {{path/to/file1.Z}} Recompress a file, [K]eeping the .Z file if it is smaller than the .gz file: znew -K {{path/to/file1.Z}}
zola A static site generator in a single binary with everything built-in. More information: https://www.getzola.org/documentation/getting-started/cli-usage/. Create the directory structure used by Zola at the given directory: zola init {{my_site}} Build the whole site in the public directory after deleting it: zola build Build the whole site into a different directory: zola build --output-dir {{path/to/output_directory/}} Build and serve the site using a local server (default is 127.0.0.1:1111): zola serve Build all pages just like the build command would, but without writing any of the results to disk: zola check
zopflipng PNG compression utility. More information: https://github.com/google/zopfli. Optimize a PNG: zopflipng {{input.png}} {{output.png}} Optimize several PNGs and save with given prefix: zopflipng --prefix={{prefix}} {{image1.png}} {{image2.png}} {{image3.png}}
zotero Manage your bibliographies. More information: https://www.zotero.org/support. Run with the GUI: zotero Run in headless mode: zotero --headless Run with a specific profile: zotero -P {{profile}} Run the Migration Assistant: zotero --migration
zoxide Keep track of the most frequently used directories. Uses a ranking algorithm to navigate to the best match. More information: https://github.com/ajeetdsouza/zoxide. Go to the highest-ranked directory that contains “foo” in the name: zoxide query {{foo}} Go to the highest-ranked directory that contains “foo” and then “bar”: zoxide query {{foo}} {{bar}} Start an interactive directory search (requires fzf): zoxide query --interactive Add a directory or increment its rank: zoxide add {{path/to/directory}}
zpool Manage ZFS pools. More information: https://manned.org/zpool. Show the configuration and status of all ZFS zpools: zpool status Check a ZFS pool for errors (verifies the checksum of EVERY block). Very CPU and disk intensive: zpool scrub {{pool_name}} List zpools available for import: zpool import Import a zpool: zpool import {{pool_name}} Export a zpool (unmount all filesystems): zpool export {{pool_name}} Show the history of all pool operations: zpool history {{pool_name}}
zsh Z SHell, a Bash-compatible command-line interpreter. See also: bash, histexpand. More information: https://www.zsh.org. Start an interactive shell session: zsh Execute specific [c]ommands: zsh -c "{{echo Hello world}}" Execute a specific script: zsh {{path/to/script.zsh}} Check a specific script for syntax errors without executing it: zsh --no-exec {{path/to/script.zsh}} Execute specific commands from stdin: {{echo Hello world}} | zsh Execute a specific script, printing each command in the script before executing it: zsh --xtrace {{path/to/script.
zstd Compress or decompress files with Zstandard compression. More information: https://github.com/facebook/zstd. Compress a file into a new file with the .zst suffix: zstd {{path/to/file}} Decompress a file: zstd --decompress {{path/to/file.zst}} Decompress to stdout: zstd --decompress --stdout {{path/to/file.zst}} Compress a file specifying the compression level, where 1=fastest, 19=slowest and 3=default: zstd -{{level}} {{path/to/file}} Unlock higher compression levels (up to 22) using more memory (both for compression and decompression): zstd --ultra -{{level}} {{path/to/file}}
zstdcat This command is an alias of zstd --decompress --stdout. View documentation for the original command: tldr zstd
zstdless Open a zstd compressed file for interactive reading, allowing scrolling and search. See also: zstd, less. More information: https://manned.org/zstdless. Open a zstd compressed file: zstdless {{path/to/file.zst}}
zstdmt This command is an alias of zstd --threads 0 (which sets the number of working threads to the number of physical CPU cores). View documentation for the original command: tldr zstd
zsteg Steganography detection tool for PNG and BMP file formats. It detects LSB steganography, ZLIB-compressed data, OpenStego, Camouflage and LSB with the Eratosthenes set. More information: https://github.com/zed-0xff/zsteg. Detect embedded data in a PNG: zsteg {{path/to/image.png}} Detect embedded data in a BMP image, using all known methods: zsteg --all {{path/to/image.bmp}} Detect embedded data in a PNG, iterating pixels vertically and using MSB first: zsteg --msb --order yx {{path/to/image.png}} Detect embedded data in a BMP image, specifying the bits to consider: zsteg --bits {{1,2,3|1-3}} {{path/to/image.