EXPAND(1) User Commands EXPAND(1)

NAME


expand, unexpand - expand TAB characters to SPACE characters, and
vice versa

SYNOPSIS


expand [-t tablist] [file]...


expand [-tabstop] [-tab1, tab2,. . ., tabn] [file]...


unexpand [-a] [-t tablist] [file]...


DESCRIPTION


The expand utility copies files (or the standard input) to the
standard output, with TAB characters expanded to SPACE characters.
BACKSPACE characters are preserved into the output and decrement the
column count for TAB calculations. expand is useful for pre-
processing character files (before sorting, looking at specific
columns, and so forth) that contain TAB characters.


unexpand copies files (or the standard input) to the standard output,
putting TAB characters back into the data. By default, only leading
SPACE and TAB characters are converted to strings of tabs, but this
can be overridden by the -a option (see the OPTIONS section below).

OPTIONS


The following options are supported for expand:

-t tablist
Specifies the tab stops. The argument
tablist must consist of a single positive
decimal integer or multiple positive
decimal integers, separated by blank
characters or commas, in ascending order.
If a single number is given, tabs will be
set tablist column positions apart instead
of the default 8. If multiple numbers are
given, the tabs will be set at those
specific column positions.

Each tab-stop position N must be an integer
value greater than zero, and the list must
be in strictly ascending order. This is
taken to mean that, from the start of a
line of output, tabbing to position N
causes the next character output to be in
the (N+1)th column position on that line.

In the event of expand having to process a
tab character at a position beyond the last
of those specified in a multiple tab-stop
list, the tab character is replaced by a
single space character in the output.


-tabstop
Specifies as a single argument, sets TAB
characters tabstop SPACE characters apart
instead of the default 8.


-tab1,tab2,...,tabn
Sets TAB characters at the columns
specified by -tab1,tab2,...,tabn


The following options are supported for unexpand:

-a
Inserts TAB characters when replacing a run of two or
more SPACE characters would produce a smaller output
file.


-t tablist
Specifies the tab stops. The option-argument tablist
must be a single argument consisting of a single
positive decimal integer or multiple positive decimal
integers, separated by blank characters or commas, in
ascending order. If a single number is given, tabs
will be set tablist column positions apart instead of
the default 8. If multiple numbers are given, the tabs
will be set at those specific column positions. Each
tab-stop position N must be an integer value greater
than zero, and the list must be in strictly ascending
order. This is taken to mean that, from the start of a
line of output, tabbing to position N will cause the
next character output to be in the (N+1)th column
position on that line. When the -t option is not
specified, the default is the equivalent of specifying
-t 8 (except for the interaction with -a, described
below).

No space-to-tab character conversions occur for
characters at positions beyond the last of those
specified in a multiple tab-stop list.

When -t is specified, the presence or absence of the
-a option is ignored; conversion will not be limited
to the processing of leading blank characters.


OPERANDS


The following operand is supported for expand and unexpand:

file
The path name of a text file to be used as input.


ENVIRONMENT VARIABLES


See environ(7) for descriptions of the following environment
variables that affect the execution of expand and unexpand: LANG,
LC_ALL, LC_CTYPE, LC_MESSAGES, and NLSPATH.

EXIT STATUS


The following exit values are returned:

0
Successful completion


>0
An error occurred.


ATTRIBUTES


See attributes(7) for descriptions of the following attributes:


+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|CSI | enabled |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+

SEE ALSO


tabs(1), attributes(7), environ(7), standards(7)

February 1, 1995 EXPAND(1)

tribblix@gmail.com :: GitHub :: Privacy