[{"data":1,"prerenderedAt":533},["ShallowReactive",2],{"project-44126612":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":35,"aspects":36,"strip":44,"post_text":46,"what":47,"said":69,"maker_in_thread":210,"shape":222,"grid":227,"attempts":496,"same_week":497,"maker_shows":42,"maker_hidden":525,"reader_version":526,"card":527},"44126612","Command Line Handbook","A modern Command Line Handbook","title","Show HN: I wrote a modern Command Line Handbook","https:\u002F\u002Fcommandline.stribny.name\u002F","commandline.stribny.name","petr25102018",1748529873,2025,454,109,90,3837,3,"legend","learning_science","command line handbook","other",[24,25,26,27,28],"linux command line","shell scripting","bash tutorial","zsh","terminal book","mixed",0.126,{"positive":32,"neutral":33,"mixed":18,"critical":34},13,14,9,39,{"docs":37,"design":39,"pricing":41},{"positive":38,"critical":18},6,{"positive":40,"critical":38},2,{"positive":42,"critical":43},1,0,[18,18,42,18,42,42,45,45,43,42,18,18,45,18,43,43,43,45,43,42,45,43,43,43,43,45,43,42,43,45,43,45,18,42,18,18,45,18,18,18],5,"TLDR: I wrote a handbook for the Linux command line. 120 pages in PDF. Updated for 2025. Pay what you want.\n\nA few years back I wrote an ebook about the Linux command line. Instead of focusing on a specific shell, paraphrasing manual pages, or providing long repetitive explanations, the idea was to create a modern guide that would help readers to understand the command line in the practical sense, cover the most common things people use the command line for, and do so without wasting the readers' time.\n\nThe book contains material on terminals, shells (compatible with both Bash and Zsh), config",{"problem":48,"audience":54,"pricing":55,"motivation":59,"time_to_build":54,"stack":65,"openness":66,"stage":67,"team_size":68},{"value":49,"source":50,"evidence":51},"Learning the Linux command line practically without repetitive or manual-style explanations","maker",[52],{"id":53},"post",null,{"value":56,"source":50,"evidence":57},"Pay what you want",[58],{"id":53},{"value":60,"source":50,"evidence":61},"Share the book so it is useful to others rather than sitting on disk",[62],{"id":63,"by":11,"text":64},"44127899","I just changed the payment model before posting it here, so there is no past data on this. I don't expect it to generate revenue compared to normal sales (it will most likely be…",[],"paid","launched","solo",{"praise":70,"objections":94,"requests":140,"questions":173,"alternatives":188},[71,83],{"value":72,"source":73,"evidence":74},"Useful examples that teach things even experienced users did not know","commenter",[75,79],{"id":76,"by":77,"text":78},"44128668","justusthane","I consider myself reasonably proficient in the shell, but I learned something just from your sample pages (process substitution). Purchased!",{"id":80,"by":81,"text":82},"44129862","_joel","Nice work, I've been using linux 20+ years and learnt something from the example pages. (edit, just realised it's closer to 30 now, jesus)",{"value":84,"source":73,"evidence":85},"Practical, accessible tone suited to teaching",[86,90],{"id":87,"by":88,"text":89},"44128745","MikeTheGreat","This is excellent! Thank you for posting and best wishes for your success with this! I'm teaching a class next year that'll have college-level students learning to use the…",{"id":91,"by":92,"text":93},"44129840","mtlynch","Different people prefer different formats for information. Some people prefer to read the manual from start to finish while others learn better seeing the same concepts in a…",[95,110,121,129],{"value":96,"source":73,"evidence":97},"Website and sample pages are broken or hard to read on mobile",[98,102,106],{"id":99,"by":100,"text":101},"44126873","charlie-83","Cool, couple of comments. The website it a bit broken on mobile (at least for me) since text goes off the screen. Second, it would be good to have some sample pages or at least a…",{"id":103,"by":104,"text":105},"44130395","jaredhallen","I am also seeing text off the screen using Brave on Android.",{"id":107,"by":108,"text":109},"44128450","sillyboi","Sorry, but it would be great to adapt it for the mobile layout.",{"value":111,"source":73,"evidence":112},"No PDF alternative such as EPUB for e-readers",[113,117],{"id":114,"by":115,"text":116},"44127002","JLO64","Honestly I would’ve liked to fork over cash for a book like this but the deal breaker for me is that it’s in PDF format. I like to read all of my books on a Kindle (with koreader…",{"id":118,"by":119,"text":120},"44127128","InsideOutSanta","Yeah, same. On a phone or smaller e-reader, regular PDFs designed for normal book size are often unreadable.",{"value":122,"source":73,"evidence":123},"Example pages are hard to find and lack a table of contents",[124,128],{"id":125,"by":126,"text":127},"44127712","catoc","Interested, but going to the website told me nothing other than a book about the command line. Would be nice be able to get a preview of a some pages\u002Fchapters.",{"id":99,"by":100,"text":101},{"value":130,"source":73,"evidence":131},"Some examples and regex details are technically inaccurate",[132,136],{"id":133,"by":134,"text":135},"44128833","jcynix","Hmm, the example page doesn't convince me, for example > The diff utility can compare files and print their differences. If we pass it the result of ls commands, we can compare…",{"id":137,"by":138,"text":139},"44136489","danadam","page 112 > if [[ \"${1-}\" =~ ^-*h(elp)?$ ]]; then > ... is an option that starts with one or multiple - characters ... \"one or multiple\" is + not *. The regex above will also…",[141,150,158,166],{"value":142,"source":73,"evidence":143},"Add a table of contents and sample pages to the homepage",[144,145,146],{"id":99,"by":100,"text":101},{"id":125,"by":126,"text":127},{"id":147,"by":148,"text":149},"44130201","pipes","I agree with all this. I'm on Firefox android, pixel, lose part of the screen too. I'd love to read a table of contents. I don't want to rip you off with zero dollars! Anyway,…",{"value":151,"source":73,"evidence":152},"Offer EPUB or other e-reader formats",[153,154],{"id":114,"by":115,"text":116},{"id":155,"by":156,"text":157},"44130611","reaperducer","Honestly I would’ve liked to fork over cash for a book like this but the deal breaker for me is that it’s in PDF format. I like to read all of my books on a Kindle When I made my…",{"value":159,"source":73,"evidence":160},"Fix mobile layout of the website",[161,162],{"id":99,"by":100,"text":101},{"id":163,"by":164,"text":165},"44132773","curtgrimes","These two tweaks should improve it (by preventing the largest text and book graphic from overflowing the viewport horizontally on some smaller screen sizes): ``` diff --git…",{"value":167,"source":73,"evidence":168},"Improve page layout and typesetting of code blocks",[169],{"id":170,"by":171,"text":172},"44132380","0x62","The content seems really great, however the typesetting makes it quite hard to read: * Code blocks on a subsequent page to the explanation, especially when there is enough space…",[174,181],{"value":175,"source":73,"evidence":176},"How well does pay-what-you-want work as a model",[177],{"id":178,"by":179,"text":180},"44127725","nickjj","How has the \"pay what you want\" model worked out if you don't mind me asking? It's something I've thought about in the past for selling courses.",{"value":182,"source":73,"evidence":183},"Which tools are covered: older standard tools or newer ones like fzf and rg",[184],{"id":185,"by":186,"text":187},"44128835","dkarl","Is your focus on older tools that tend to be on most machines and used in older shell scripts (e.g., find and grep), or on newer and upgraded tools (fd, fzf, rg) that developers…",[189,196,203],{"value":190,"source":73,"evidence":191},"Linux Journey",[192],{"id":193,"by":194,"text":195},"44129167","rochak","Good resource to couple this resource with: https:\u002F\u002Flinuxjourney.com.",{"value":197,"source":73,"evidence":198},"The Shell Haters Handbook",[199],{"id":200,"by":201,"text":202},"44130646","briandoll","Folks interested in this will also appreciate The Shell Haters Handbook: https:\u002F\u002Fshellhaters.org\u002Fdeck\u002F",{"value":204,"source":73,"evidence":205},"Interactive TUI apps for learning CLI tools",[206],{"id":207,"by":208,"text":209},"44132807","asicsp","I wrote interactive TUI apps with exercises for Linux CLI tools, coreutils, grep, sed and awk: https:\u002F\u002Fgithub.com\u002Flearnbyexample\u002FTUI-apps",{"comments":211,"answered":38,"key":212},36,[213,216,219],{"id":214,"text":215},"44127247","True, the landing page could be more detailed. I didn't want to repeat much the info on Gumroad page, but maybe I should rethink it. And thanks for the copy suggestions. I am not…",{"id":217,"text":218},"44132420","Thank you! Yes, as other people pointed out too, the landing page could do with some mobile and copy improvements.",{"id":220,"text":221},"44136709","Thanks!",{"commenters":223,"max_depth":224,"maker_replies":211,"first_comment_mins":225,"lifespan_hours":226},60,8,28,125,[228,231,233,236,240,241,244,246,248,250,254,256,258,259,261,262,265,267,269,272,274,276,280,283,285,287,288,290,293,296,299,301,304,306,309,312,315,316,318,321,324,327,329,331,333,336,338,340,341,344,346,348,349,350,352,354,356,358,360,364,366,368,371,373,376,378,381,384,387,390,394,396,398,400,401,404,408,410,412,415,417,421,423,427,429,433,435,439,441,445,448,451,453,455,457,460,462,465,467,470,474,476,478,480,484,486,488,490,492],[229,43,18,230,92,43],"44127185","project\u002Fneutral\u002Fdocs",[214,43,43,232,11,42],"maker\u002Fneutral\u002Fnone",[234,43,18,230,235,43],"44131740","frosting1337",[237,43,18,238,239,43],"44131993","project\u002Fmixed\u002Fdesign","rubit_xxx17",[217,43,43,232,11,42],[242,43,18,230,243,43],"44135244","wyclif",[220,43,43,245,11,42],"maker\u002Fpositive\u002Fnone",[99,42,42,247,100,43],"project\u002Fcritical\u002Fdesign",[249,42,43,232,11,42],"44126912",[251,42,18,252,253,43],"44128935","project\u002Fmixed\u002Fdocs","PeterWhittaker",[255,42,43,232,11,42],"44131781",[137,42,42,257,138,43],"project\u002Fcritical\u002Fdocs",[147,42,18,238,148,43],[260,42,43,232,11,42],"44131498",[103,42,42,247,104,43],[263,42,43,264,11,42],"44131504","maker\u002Fneutral\u002Fdesign",[163,42,45,266,164,43],"project\u002Fpositive\u002Fdesign",[268,42,43,245,11,42],"44141644",[270,40,43,271,11,42],"44127014","project\u002Fneutral\u002Fnone",[76,40,45,273,77,43],"project\u002Fpositive\u002Fdocs",[275,40,43,245,11,42],"44128729",[277,40,43,278,279,43],"44129435","commenter\u002Fneutral\u002Fnone","teddyh",[281,40,43,278,282,43],"44129721","cortesoft",[91,40,43,284,92,43],"commenter\u002Fneutral\u002Fdocs",[286,40,43,278,77,43],"44130022",[133,40,42,257,134,43],[289,40,43,230,11,42],"44128916",[291,40,45,273,292,43],"44131369","sureglymop",[294,40,42,257,295,43],"44133339","SlackingOff123",[297,40,18,230,298,43],"44134420","pie_flavor",[300,40,43,230,11,42],"44134887",[302,40,18,230,303,43],"44136146","flas9sd",[305,40,43,245,11,42],"44137982",[307,18,45,273,308,43],"44136565","swhite237",[200,310,43,311,201,43],4,"other\u002Fneutral\u002Fnone",[313,310,43,311,314,43],"44132596","MaggieL",[185,45,18,271,186,43],[317,45,43,232,11,42],"44128879",[319,45,43,311,320,43],"44129089","cerved",[322,45,43,311,323,43],"44130525","ontouchstart",[325,45,43,311,326,43],"44130858","subjectsigma",[328,45,43,278,11,42],"44131530",[330,45,43,311,323,43],"44135464",[332,45,43,311,323,43],"44134856",[334,45,43,335,326,43],"44135118","other\u002Fcritical\u002Fnone",[337,45,43,311,323,43],"44135254",[178,38,18,339,179,43],"project\u002Fneutral\u002Fpricing",[63,38,43,339,11,42],[342,38,45,245,343,43],"44128125","ctippett",[193,345,43,311,194,43],7,[347,345,43,311,208,43],"44132785",[207,224,43,311,208,43],[170,34,42,247,171,43],[351,34,43,264,11,42],"44132416",[80,353,45,273,81,43],10,[355,353,43,245,11,42],"44131558",[87,357,45,273,88,43],11,[359,357,43,245,11,42],"44128947",[361,362,43,311,363,43],"44127325",12,"dedicate",[365,362,43,311,77,43],"44128629",[367,362,43,278,134,43],"44128981",[369,362,43,278,370,43],"44133875","geocar",[372,362,43,232,11,42],"44128701",[374,362,43,278,375,43],"44130920","litoE",[377,362,43,278,11,42],"44131586",[379,362,43,311,380,43],"44130326","calvinmorrison",[382,362,43,311,383,43],"44131138","smw",[385,362,43,311,386,43],"44131923","magarnicle",[388,362,43,311,389,43],"44132308","bionsystem",[391,32,45,392,393,43],"44128890","project\u002Fpositive\u002Fnone","JulianWasTaken",[395,32,43,278,11,42],"44131581",[397,32,43,278,393,43],"44132484",[399,32,43,278,11,42],"44132604",[125,33,42,247,126,43],[402,33,43,403,11,42],"44127810","maker\u002Fneutral\u002Fdocs",[405,406,43,311,407,43],"44131741",15,"honkycat",[409,406,43,278,11,42],"44131802",[411,406,43,278,407,43],"44132126",[413,406,43,278,414,43],"44133906","brontosaurusrex",[416,406,43,311,407,43],"44136839",[418,419,45,273,420,43],"44136737",16,"tanchaowen84",[422,419,43,403,11,42],"44138028",[424,425,43,311,426,43],"44133959",17,"mettamage",[428,425,43,232,11,42],"44134450",[430,431,45,392,432,43],"44132680",18,"sagarpatil",[434,431,43,403,11,42],"44132715",[436,437,45,266,438,43],"44137776",19,"gknoy",[440,437,43,245,11,42],"44137970",[442,443,18,339,444,43],"44128442",20,"bprater",[446,443,43,447,11,42],"44128582","maker\u002Fneutral\u002Fpricing",[449,443,43,278,450,43],"44129021","meonkeys",[114,452,42,247,115,43],21,[454,452,43,403,11,42],"44127025",[118,452,43,456,119,43],"commenter\u002Fneutral\u002Fdesign",[458,452,18,230,459,43],"44127395","username223",[461,452,43,403,11,42],"44127628",[463,452,18,264,464,43],"44127835","rmahan",[155,452,18,466,156,43],"project\u002Fneutral\u002Fdesign",[468,452,18,466,469,43],"44133362","kelvinjps10",[471,452,45,472,473,43],"44134875","project\u002Fpositive\u002Fpricing","dtnewman",[475,452,43,232,11,42],"44134948",[477,452,18,232,473,43],"44135202",[479,452,43,245,11,42],"44135555",[481,482,45,392,483,43],"44132886",22,"jdshaffer",[485,482,43,245,11,42],"44133515",[107,487,42,247,108,43],23,[489,487,43,264,11,42],"44128483",[491,487,18,466,108,43],"44173651",[493,494,43,311,495,43],"44128693",24,"KasianFranks",[],[498,503,508,512,516,521],{"id":499,"name":500,"points":501,"category":502},"44157177","Kan.bn",509,"productivity",{"id":504,"name":505,"points":506,"category":507},"44127653","Onlook",408,"dev_tools",{"id":509,"name":510,"points":511,"category":507},"44123098","Typed-FFmpeg",342,{"id":513,"name":514,"points":515,"category":507},"44159758","Vanta",265,{"id":517,"name":518,"points":519,"category":520},"44147803","Patio",255,"web_saas",{"id":522,"name":523,"points":524,"category":507},"44174190","AirAP AirPlay server",207,false,"v2",{"id":528,"name":5,"line":6,"ai":525,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":529,"top":18,"kw":530,"maker":11,"domain":10,"tier":19,"attempts":43,"strip":531,"url":9,"mix":532,"praise":72,"objection":96,"sub":21},44126612,0.13,[24,25,26,27,28],"3313115501335300050150000501050531335333",[32,33,18,34],1794036675854]