gawk: Extension Sample Readfile

 
 16.7.10 Reading an Entire File
 ------------------------------
 
 The 'readfile' extension adds a single function named 'readfile()', and
 an input parser:
 
 '@load "readfile"'
      This is how you load the extension.
 
 'result = readfile("/some/path")'
      The argument is the name of the file to read.  The return value is
      a string containing the entire contents of the requested file.
      Upon error, the function returns the empty string and sets 'ERRNO'.
 
 'BEGIN { PROCINFO["readfile"] = 1 }'
      In addition, the extension adds an input parser that is activated
      if 'PROCINFO["readfile"]' exists.  When activated, each input file
      is returned in its entirety as '$0'.  'RT' is set to the null
      string.
 
    Here is an example:
 
      @load "readfile"
      ...
      contents = readfile("/path/to/file");
      if (contents == "" && ERRNO != "") {
          print("problem reading file", ERRNO) > "/dev/stderr"
          ...
      }