{"id":228984,"date":"2026-03-28T07:30:00","date_gmt":"2026-03-28T11:30:00","guid":{"rendered":"https:\/\/news-you-need.com\/index.php\/2026\/03\/28\/this-one-linux-shell-character-made-me-feel-like-a-hacker\/"},"modified":"2026-03-29T17:25:09","modified_gmt":"2026-03-29T21:25:09","slug":"this-one-linux-shell-character-made-me-feel-like-a-hacker","status":"publish","type":"post","link":"https:\/\/news-you-need.com\/index.php\/2026\/03\/28\/this-one-linux-shell-character-made-me-feel-like-a-hacker\/","title":{"rendered":"This one Linux shell character made me feel like a hacker"},"content":{"rendered":"<p><a href=\"https:\/\/tech.yahoo.com\/computing\/articles\/one-linux-shell-character-made-113016289.html\">This one Linux shell character made me feel like a hacker<\/a><\/p>\n<p><a href=\"https:\/\/tech.yahoo.com\/computing\/articles\/one-linux-shell-character-made-113016289.html\">https:\/\/tech.yahoo.com\/computing\/articles\/one-linux-shell-character-made-113016289.html<\/a><\/p>\n<p>Publish Date: <a href=\"publish_date]\">2026-03-28 07:30:00<\/a><\/p>\n<p>Source Domain: <a href=\"tech.yahoo.com\">tech.yahoo.com<\/a><\/p>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">Like many people using Unix-like operating systems for the first time, I was introduced to the concept of the pipeline. Here&#8217;s how a single character on the command line changed everything.<\/p>\n<h2 class=\"heading-mb col-body heading-text-style font-bold charcoal-color\">What is the pipe (|) character?<\/h2>\n<h3 class=\"heading-mb col-body text-[1.125rem]\/[1.375rem] font-bold charcoal-color\">Building programs from other programs<\/h3>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">The pipleline character, or |, sends the output of one Linux command to the input of another. It was originally developed at Bell Labs in the early 1970s. I was introduced to this in a book on Unix on what was then called &#8220;Mac OS X.&#8221; This simple character changed everything.<\/p>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">A good example of a pipeline is searching the output of a program for some string. Suppose I wanted to find out which processes on the system belonged to root. I would display all of the processes running on the system with the &#8220;ps aux&#8221; command and send that output to grep, searching for &#8220;root&#8221;<\/p>\n<p>ps aux | grep root<span class=\"absolute bottom-0 right-0 rounded-full bg-white p-3 opacity-100 shadow-elevation-3 transition-opacity duration-300 group-hover:block group-hover:opacity-100 md:p-[17px] lg:bottom-6 lg:right-6 lg:bg-white\/90 lg:p-5 lg:opacity-0 lg:shadow-none\"><\/span><\/p>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">The concept was invented by Doug McIllroy. At the time, Unix was actually considered user-friendly because you typed commands into a terminal instead of punching up a deck of computer cards to hand to an operator in the computer center and wait to receive your results (and your inevitable errors).<\/p>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">The latter was called &#8220;batch mode,&#8221; and it was how mainframe computers were used since their inception.<\/p>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">Pipelines make use of a concept in Unix and modern Linux systems of &#8220;standard input\/output.&#8221; The standard input is the keyboard, and the standard output is the terminal. There&#8217;s also a &#8220;standard error&#8221; for error messages. This is also the terminal. You can &#8220;redirect&#8221; standard input. I&#8217;d seen this concept when trying to follow along with a C++ book, but it made a lot more sense to me when I started using the Linux command line.<\/p>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">You can save the output to a file for later with the  (greater than) symbol:<\/p>\n<p>ps aux  allprocs<\/p>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">Or you can feed the contents of a file to another program with the<\/p>\n<p>cat <\/p>\n<h2 class=\"heading-mb col-body heading-text-style font-bold charcoal-color\">The &#8220;software tools&#8221; idea<\/h2>\n<h3 class=\"heading-mb col-body text-[1.125rem]\/[1.375rem] font-bold charcoal-color\">The vibe coding of the &#8217;70s?<\/h3>\n<p class=\"col-body mb-4 leading-7 text-[18px] md:leading-8 break-words min-w-0 charcoal-color\">This approach might be simple, but it was a kind of manifesto. Instead of building monolithic programs,&#8230;<\/p>\n<p><a href=\"https:\/\/tech.yahoo.com\/computing\/articles\/one-linux-shell-character-made-113016289.html\">Source<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This one Linux shell character made me feel like a hacker https:\/\/tech.yahoo.com\/computing\/articles\/one-linux-shell-character-made-113016289.html Publish Date: 2026-03-28&#8230;<\/p>\n","protected":false},"author":1,"featured_media":228985,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/s.yimg.com\/ny\/api\/res\/1.2\/7B8T3VcAzi5MFBVmGtblEw--\/YXBwaWQ9aGlnaGxhbmRlcjt3PTEyMDA7aD02NzU-\/https:\/\/media.zenfs.com\/en\/how_to_geek_999\/08f4b5e85f7201b533a76914944de9a3","fifu_image_alt":"","footnotes":""},"categories":[48],"tags":[35,71],"class_list":["post-228984","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux","tag-hacker","tag-linux"],"_links":{"self":[{"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/posts\/228984"}],"collection":[{"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/comments?post=228984"}],"version-history":[{"count":1,"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/posts\/228984\/revisions"}],"predecessor-version":[{"id":228986,"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/posts\/228984\/revisions\/228986"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/media\/228985"}],"wp:attachment":[{"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/media?parent=228984"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/categories?post=228984"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/news-you-need.com\/index.php\/wp-json\/wp\/v2\/tags?post=228984"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}