[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
awk
The following is an alphabetical list of variables that you can change to
control how awk
does certain things. The variables that are
specific to gawk
are marked with a pound sign (`#').
BINMODE #
"r"
or "w"
specify that input files and
output files, respectively, should use binary I/O.
A string value of "rw"
or "wr"
indicates that all
files should use binary I/O.
Any other string value is equivalent to "rw"
, but gawk
generates a warning message.
BINMODE
is described in more detail in
Using gawk
on PC Operating Systems.
This variable is a gawk
extension.
In other awk
implementations
(except mawk
,
see section Other Freely Available awk
Implementations),
or if gawk
is in compatibility mode
(see section Command-Line Options),
it is not special.
CONVFMT
sprintf
function
(see section String Manipulation Functions).
Its default value is "%.6g"
.
CONVFMT
was introduced by the POSIX standard.
FIELDWIDTHS #
gawk
how to split input with fixed columnar boundaries.
Assigning a value to FIELDWIDTHS
overrides the use of FS
for field splitting.
See section Reading Fixed-Width Data, for more information.
If gawk
is in compatibility mode
(see section Command-Line Options), then FIELDWIDTHS
has no special meaning, and field-splitting operations occur based
exclusively on the value of FS
.
FS
""
), then each
character in the record becomes a separate field.
(This behavior is a gawk
extension. POSIX awk
does not
specify the behavior when FS
is the null string.)
The default value is " "
, a string consisting of a single
space. As a special exception, this value means that any
sequence of spaces, tabs, and/or newlines is a single separator.(24) It also causes
spaces, tabs, and newlines at the beginning and end of a record to be ignored.
You can set the value of FS
on the command line using the
`-F' option:
awk -F, 'program' input-files |
If gawk
is using FIELDWIDTHS
for field splitting,
assigning a value to FS
causes gawk
to return to
the normal, FS
-based field splitting. An easy way to do this
is to simply say `FS = FS', perhaps with an explanatory comment.
IGNORECASE #
IGNORECASE
is nonzero or non-null, then all string comparisons
and all regular expression matching are case-independent. Thus, regexp
matching with `~' and `!~', as well as the gensub
,
gsub
, index
, match
, split
, and sub
functions, record termination with RS
, and field splitting with
FS
, all ignore case when doing their particular regexp operations.
However, the value of IGNORECASE
does not affect array subscripting.
See section Case Sensitivity in Matching.
If gawk
is in compatibility mode
(see section Command-Line Options),
then IGNORECASE
has no special meaning. Thus, string
and regexp operations are always case-sensitive.
LINT #
gawk
behaves as if the `--lint' command-line option is in effect.
(see section Command-Line Options).
With a value of "fatal"
, lint warnings become fatal errors.
Any other true value prints non-fatal warnings.
Assigning a false value to LINT
turns off the lint warnings.
This variable is a gawk
extension. It is not special
in other awk
implementations. Unlike the other special variables,
changing LINT
does affect the production of lint warnings,
even if gawk
is in compatibility mode. Much as
the `--lint' and `--traditional' options independently
control different aspects of gawk
's behavior, the control
of lint warnings during program execution is independent of the flavor
of awk
being executed.
OFMT
print
statement. It works by being passed
as the first argument to the sprintf
function
(see section String Manipulation Functions).
Its default value is "%.6g"
. Earlier versions of awk
also used OFMT
to specify the format for converting numbers to
strings in general expressions; this is now done by CONVFMT
.
OFS
print
statement. Its
default value is " "
, a string consisting of a single space.
ORS
print
statement. Its default value is "\n"
, the newline
character. (See section 5.3 Output Separators.)
RS
awk
's input record separator. Its default value is a string
containing a single newline character, which means that an input record
consists of a single line of text.
It can also be the null string, in which case records are separated by
runs of blank lines.
If it is a regexp, records are separated by
matches of the regexp in the input text.
(See section How Input Is Split into Records.)
The ability for RS
to be a regular expression
is a gawk
extension.
In most other awk
implementations,
or if gawk
is in compatibility mode
(see section Command-Line Options),
just the first character of RS
's value is used.
SUBSEP
"\034"
and is used to separate the parts of the indices of a
multidimensional array. Thus, the expression foo["A", "B"]
really accesses foo["A\034B"]
(see section Multidimensional Arrays).
TEXTDOMAIN #
awk
level. It sets the default text domain for specially
marked string constants in the source text, as well as for the
dcgettext
and bindtextdomain
functions
(see section Internationalization with gawk
).
The default value of TEXTDOMAIN
is "messages"
.
This variable is a gawk
extension.
In other awk
implementations,
or if gawk
is in compatibility mode
(see section Command-Line Options),
it is not special.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |