GNU Info

Info Node: (gawk.info)File Checking

(gawk.info)File Checking


Next: Ignoring Assigns Prev: Rewind Function Up: Data File Management
Enter node , (file) or (file)node

Checking for Readable Data Files
--------------------------------

   Normally, if you give `awk' a data file that isn't readable, it
stops with a fatal error.  There are times when you might want to just
ignore such files and keep going.  You can do this by prepending the
following program to your `awk' program:

     # readable.awk --- library file to skip over unreadable files
     BEGIN {
         for (i = 1; i < ARGC; i++) {
             if (ARGV[i] ~ /^[A-Za-z_][A-Za-z0-9_]*=.*/ \
                 || ARGV[i] == "-")
                 continue    # assignment or standard input
             else if ((getline junk < ARGV[i]) < 0) # unreadable
                 delete ARGV[i]
             else
                 close(ARGV[i])
         }
     }

   In `gawk', the `getline' won't be fatal (unless `--posix' is in
force).  Removing the element from `ARGV' with `delete' skips the file
(since it's no longer in the list).


automatically generated by info2www version 1.2.2.9