Previous: AWKLIBPATH Variable, Up: Environment Variables   [Contents][Index]


2.5.3 Other Environment Variables

A number of other environment variables affect gawk’s behavior, but they are more specialized. Those in the following list are meant to be used by regular users:

GAWK_MSEC_SLEEP

Specifies the interval between connection retries, in milliseconds. On systems that do not support the usleep() system call, the value is rounded up to an integral number of seconds.

GAWK_READ_TIMEOUT

Specifies the time, in milliseconds, for gawk to wait for input before returning with an error. See Read Timeout.

GAWK_SOCK_RETRIES

Controls the number of times gawk attempts to retry a two-way TCP/IP (socket) connection before giving up. See TCP/IP Networking.

POSIXLY_CORRECT

Causes gawk to switch to POSIX-compatibility mode, disabling all traditional and GNU extensions. See Options.

The environment variables in the following list are meant for use by the gawk developers for testing and tuning. They are subject to change. The variables are:

AWKBUFSIZE

This variable only affects gawk on POSIX-compliant systems. With a value of ‘exact’, gawk uses the size of each input file as the size of the memory buffer to allocate for I/O. Otherwise, the value should be a number, and gawk uses that number as the size of the buffer to allocate. (When this variable is not set, gawk uses the smaller of the file’s size and the “default” blocksize, which is usually the filesystem’s I/O blocksize.)

AWK_HASH

If this variable exists with a value of ‘gst’, gawk switches to using the hash function from GNU Smalltalk for managing arrays. This function may be marginally faster than the standard function.

AWKREADFUNC

If this variable exists, gawk switches to reading source files one line at a time, instead of reading in blocks. This exists for debugging problems on filesystems on non-POSIX operating systems where I/O is performed in records, not in blocks.

GAWK_MSG_SRC

If this variable exists, gawk includes the file name and line number within the gawk source code from which warning and/or fatal messages are generated. Its purpose is to help isolate the source of a message, as there are multiple places that produce the same warning or error message.

GAWK_NO_DFA

If this variable exists, gawk does not use the DFA regexp matcher for “does it match” kinds of tests. This can cause gawk to be slower. Its purpose is to help isolate differences between the two regexp matchers that gawk uses internally. (There aren’t supposed to be differences, but occasionally theory and practice don’t coordinate with each other.)

GAWK_NO_PP_RUN

When gawk is invoked with the --pretty-print option, it will not run the program if this environment variable exists.

CAUTION: This variable will not survive into the next major release.

GAWK_STACKSIZE

This specifies the amount by which gawk should grow its internal evaluation stack, when needed.

INT_CHAIN_MAX

This specifies intended maximum number of items gawk will maintain on a hash chain for managing arrays indexed by integers.

STR_CHAIN_MAX

This specifies intended maximum number of items gawk will maintain on a hash chain for managing arrays indexed by strings.

TIDYMEM

If this variable exists, gawk uses the mtrace() library calls from the GNU C library to help track down possible memory leaks.


Previous: AWKLIBPATH Variable, Up: Environment Variables   [Contents][Index]