Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of The Linux Command Line

    The Linux Command Line

    William E. Shotts · 2011

    You've experienced the shiny, point-and-click surface of your Linux computer -- now dive below and explore its depths with the power of the command line. The Linux Command Line takes you from your very first terminal keystrokes to writing full programs in Bash, the most popular Linux shell. Along the way you'll learn the timeless skills handed down by generations of gray-bearded, mouse-shunning gurus: file navigation, environment configuration, command chaining, pattern matching with regular expressions, and more. In addition to that practical knowledge, author William Shotts reveals the philosophy behind these tools and the rich heritage that your desktop Linux machine has inherited from Unix supercomputers of yore. As you make your way through the book's short, easily-digestible chapters, you'll learn how to: Create and delete files, directories, and symlinks; Administer your system, including networking, package installation, and process management; Use standard input and output, redirection, and pipelines; Edit files with Vi, the world's most popular text editor; Write shell scripts to automate common or boring tasks; Slice and dice text files with cut, paste, grep, patch, and sed; Once you overcome your initial "shell shock," you'll find that the command line is a natural and expressive way to communicate with your computer. Just don't be surprised if your mouse starts to gather dust. - Publisher.

    Systems & OSProgramming
    Open LibraryAmazon
    Stats for nerds
    15recommend
    16mentions
    15people
    2014–2026years
    100% recommend

    Mentions per year

    2014201620182020202220242026

    What Hacker News says

    1. pss314Jun 2026
      Love both books by Daniel J. Barrett.

      "The Linux Command Line" by William Shotts is pretty good book for new and experienced command line users. He has also written the supplemental book "Adventures with the Linux Command Line". The author has also generously provided them for free download at https://linuxcommand.org/tlcl.php.

      thread
    2. freedombenJun 2024
      Really great resource. If you want more of a book format, I also highly recommend The Linux Command Line by William Shotts: https://linuxcommand.org/tlcl.php
      thread
    3. scopApr 2024
      The Linux Command Line: A Complete Introduction by William Shotts.

      In my own learning I found this to be the single greatest resource for getting to know the terminal. It has the perfect balance of overview/detail, allowing you to cover an immense amount of ground while feeling like you have a grasp on what's going on when you do something. From there you can then consult reference material as needed.

      thread
    4. dosourcenotcodeJan 2024
      I absolutely stand by my claim that FRT is the Next Generation of FOSS for several reasons.

      To begin with even now in the 2020s billions of people alive today have never once been on the Internet. Source: https://www.un.org/en/delegate/itu-29-billion-people-still-o...

      Also billions more may have some kind of Internet but it's flaky. Sometimes very very flaky. They are systematically excluded from large swathes of the FOSS ecosystem.

      So make no mistake, the scale of the problem is VAST. We're talking billions of people here that can be helped by FRT. Again, billions, with a B.

      If all existing FOSS were transformed into FRTs overnight the world would be unrecognizably better by several orders of magnitude.

      And yes we need a new manifesto/definition. FOSS standards have completely dropped the ball on this issue among several others. Do a ctrl+f for the word "offline" in either the Free Software Definition or the Open Source Definition.

      Many FOSS implementations also drop the ball here. Happily some do the right thing. Sometimes deliberately which is beautiful to see. Often though it turns out it's accidental and one redesign of the site later I can't get docs for the latest version of the tool.

      Oftentimes it's the small (sometimes subtle) details that make the difference between freedom and lack thereof and the FRTD exists to make sure they are covered.

      Even seemingly simple things often aren't. Consider pointers, they're just a thing that stores a memory address, no big deal right, easy peasy, yet using them safely is the subject of at least several chapters in a book, and even calls for research into and implementations of safer approaches like those used by Rust.

      And yes one of the details the FRTD addresses is the discoverability issue you mention with the man pages.

      Say I'm a newbie that just learned there's a thing called the command line and I open my terminal. I see a Bash prompt, but I don't know what to do with it, or even that it's a Bash prompt. I don't know about the man command. I don't know about apropos. I don't know about GNU info. I don't know to try looking for info manuals if I can't find man pages. I just vaguely know from like the movies or something I have to type stuff, press enter, and then stuff happens.

      I don't know anything yet. The fact that the man pages are on my system and will be available offline does all of bupkis for me at this point.

      On Linux there's a man page called "intro" (and even though there's room for improving it) after which someone reads it they actually have a fighting chance of using the command line and knowing where to learn more. On OpenBSD there's a similar man page called "help" that does a similar job and starts the whole conceptual bootstrap chain. Yet nothing tells me to start my studies by running "man intro".

      On Linux a one sentence message saying to run "man intro" to begin your studies of the command line would go a long way for example.

      The difference between information and knowledge is often a few small bits of commonsensically placed metadata forming a conceptual bootstrap chain as well as one pointing to the chain's start. Not labor intensive on the part of implementers yet transforms the system from zero to superhero.

      Or perhaps since William Shotts wrote an excellent book called The Linux Command Line, and it's licensed under Creative Commons such that it can be reproduced and included in Linux distributions, maybe there can be a pointer telling people to read that at wherever it's stored on the system instead because it's far superior to "man intro".

      Again a one or two sentence message can make all the difference.

      thread
    5. quijoteunivNov 2023
      The Linux Command Line

      by William Shotts

      thread
    6. aarond0623Nov 2023
      IMO, the best way to get comfortable with Linux is to get comfortable with the command line, because although every distribution is going to have different UI and built-in apps, the command line is going to stay pretty consistent. Also, a lot of troubleshooting you Google is going to involve interacting with the command line, and it's essential to understand what the commands you're executing are actually doing.

      I'd recommend The Linux Command Line by William Schotts to get started.

      thread

    Related

    Linux Programming InterfaceMichael Kerrisk
    2011–2026

    Linux Programming Interface

    Michael Kerrisk
    98 recommend · 156
    Cover of Advanced programming in the Unix environment
    2008–2025

    Advanced programming in the Unix environment

    W. Richard Stevens
    100 recommend · 153
    Cover of The UNIX programming environment
    2007–2026

    The UNIX programming environment

    Brian W. Kernighan
    86 recommend · 215
    Cover of How Linux Works
    2010–2024

    How Linux Works

    Brian Ward
    20 recommend · 29
    Cover of UNIX
    2010–2026

    UNIX

    Brian W. Kernighan
    14 recommend · 28
    Cover of A Practical Guide to Linux Commands, Editors, and Shell Programming
    2017–2020

    A Practical Guide to Linux Commands, Editors, and Shell Programming

    Mark G. Sobell
    2 recommend · 3
    Cover of The art of UNIX programming
    2007–2026

    The art of UNIX programming

    Eric S. Raymond
    85 recommend · 238
    Efficient Linux at the Command LineDaniel J. Barrett
    2023–2026

    Efficient Linux at the Command Line

    Daniel J. Barrett
    2 recommend · 4