gawk: Read Terminal

 
 1.1.2 Running 'awk' Without Input Files
 ---------------------------------------
 
 You can also run 'awk' without any input files.  If you type the
 following command line:
 
      awk 'PROGRAM'
 
 'awk' applies the PROGRAM to the "standard input", which usually means
 whatever you type on the keyboard.  This continues until you indicate
 end-of-file by typing 'Ctrl-d'.  (On non-POSIX operating systems, the
 end-of-file character may be different.)
 
    As an example, the following program prints a friendly piece of
 advice (from Douglas Adams's 'The Hitchhiker's Guide to the Galaxy'), to
 keep you from worrying about the complexities of computer programming:
 
      $ awk 'BEGIN { print "Don\47t Panic!" }'
      -| Don't Panic!
 
    'awk' executes statements associated with 'BEGIN' before reading any
 input.  If there are no other statements in your program, as is the case
 here, 'awk' just stops, instead of trying to read input it doesn't know
 how to process.  The '\47' is a magic way (explained later) of getting a
 single quote into the program, without having to engage in ugly shell
 quoting tricks.
 
      NOTE: If you use Bash as your shell, you should execute the command
      'set +H' before running this program interactively, to disable the
      C shell-style command history, which treats '!' as a special
      character.  We recommend putting this command into your personal
      startup file.
 
    This next simple 'awk' program emulates the 'cat' utility; it copies
 whatever you type on the keyboard to its standard output (why this works
 is explained shortly):
 
      $ awk '{ print }'
      Now is the time for all good men
      -| Now is the time for all good men
      to come to the aid of their country.
      -| to come to the aid of their country.
      Four score and seven years ago, ...
      -| Four score and seven years ago, ...
      What, me worry?
      -| What, me worry?
      Ctrl-d