gitwtfhub

jlevy/the-art-of-command-line

160,844Audience · developerComplexity · 1/5StaleLicenseSetup · easy

TL;DR

A practical guide to mastering command-line productivity with concrete examples, tips, and shortcuts for Bash, Linux, and Unix systems.

Mindmap

mindmap
  root((repo))
    What it does
      Command-line skills
      Productivity tips
      Concrete examples
    Core topics
      Basics and setup
      File management
      System debugging
      Data processing
    Practical skills
      Keyboard shortcuts
      Job control
      Regular expressions
      SSH and auth
    Platforms
      Linux
      macOS
      Unix systems
      Windows
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why anyone would actually build this

REASON 1

Learn keyboard shortcuts and command-line tricks to work faster in the terminal.

REASON 2

Find quick answers on file management, networking, and system debugging without reading full documentation.

REASON 3

Master Bash job control, SSH setup, and regular expressions with practical examples.

REASON 4

Reference common one-liners and obscure but useful commands for everyday tasks.

Stack

BashLinuxmacOSUnixWindows

Spinning it up

Difficulty · easy Time to first run · 5min
Use freely for any purpose, including commercial use, as long as you keep the copyright notice and license text.

Wtf does this do

The Art of Command Line is a single-page guide that collects notes and tips for using a Unix shell on Linux. The README says it is meant for both beginners and experienced users, with the goals of breadth, specificity, and brevity: every tip is meant to be essential in some situation or to save real time over alternatives. The text exists in English and has community translations into 18 other languages, including Czech, German, Greek, Spanish, French, Indonesian, Italian, Japanese, Korean, Polish, Portuguese, Romanian, Russian, Slovenian, Ukrainian, simplified Chinese, and traditional Chinese. The guide is organized into a fixed list of sections: Meta, Basics, Everyday use, Processing files and data, System debugging, One-liners, Obscure but useful, macOS only, Windows only, More resources, and Disclaimer. The Meta section spells out the scope. The guide is written for interactive Bash on Linux, includes both standard Unix commands and tools that need extra package installs, and assumes the reader will use a package manager such as apt, yum, dnf, pacman, pip, or brew to install anything that is not built in. The Basics section is a working sample of the style. It points readers at man bash, recommends learning at least one text-based editor well, names nano, Vim, and Emacs as options, and walks through finding documentation through man, apropos, help, type, and curl cheat.sh/command. It covers redirection with greater-than and less-than signs, pipes, the difference between overwrite and append, file globs, single versus double quotes, Bash job control with ampersand, ctrl-z, ctrl-c, jobs, fg, bg, and kill, ssh and ssh-agent, file management with ls, less, head, tail, ln, chown, chmod, du, df, mount, fdisk, mkfs, lsblk, basic networking with ip, ifconfig, dig, traceroute, route, version control with git, regular expressions and grep flags, and package installation. The Everyday use section then moves into interactive shell tricks: Tab completion, ctrl-r history search, ctrl-w and ctrl-u line editing, alt-b and alt-f for word movement, ctrl-a and ctrl-e for line ends, ctrl-k, ctrl-l, alt-dot for previous arguments, set -o vi for vi key bindings, and ctrl-x ctrl-e to open the current command in the configured editor. The author notes the page started life as Quora answers, was moved to GitHub, and has been improved by many contributors and translators since.

Yoink these prompts

Prompt 1
Show me the most useful Bash keyboard shortcuts from the Art of Command Line guide that would speed up my workflow.
Prompt 2
What are the key command-line tips for file management and data processing mentioned in this guide?
Prompt 3
Give me practical examples of grep, regular expressions, and piping commands from this reference.
Prompt 4
How do I set up passwordless SSH authentication according to this guide?
Prompt 5
What are the most important command-line basics I should master as a beginner?
View the repo → Decode another repo

← jlevy on gitmyhub — every repo by this author, as a profile.

Don't trust strangers blindly. Verify against the repo.