Go to the first, previous, next, last section, table of contents.


A Rose by Any Other Name

The @command{awk} language has evolved over the years. Full details are provided in @ref{Language History, ,The Evolution of the @command{awk} Language}. The language described in this Info file is often referred to as "new @command{awk}" (@command{nawk}).

Because of this, many systems have multiple versions of @command{awk}. Some systems have an @command{awk} utility that implements the original version of the @command{awk} language and a @command{nawk} utility for the new version. Others have an @command{oawk} for the "old @command{awk}" language and plain @command{awk} for the new one. Still others only have one version, which is usually the new one.(2) for their @command{awk} implementation!}

All in all, this makes it difficult for you to know which version of @command{awk} you should run when writing your programs. The best advice I can give here is to check your local documentation. Look for @command{awk}, @command{oawk}, and @command{nawk}, as well as for @command{gawk}. It is likely that you already have some version of new @command{awk} on your system, which is what you should use when running your programs. (Of course, if you're reading this Info file, chances are good that you have @command{gawk}!)

Throughout this Info file, whenever we refer to a language feature that should be available in any complete implementation of POSIX @command{awk}, we simply use the term @command{awk}. When referring to a feature that is specific to the GNU implementation, we use the term @command{gawk}.


Go to the first, previous, next, last section, table of contents.