Gnu/coreutils/expand-invocation
Next: unexpand invocation, Previous: tr invocation, Up: Operating on characters [Contents][Index]
9.2 expand
: Convert tabs to spaces
expand
writes the contents of each given file
, or standard
input if none are given or for a file
of ‘-
’, to standard
output, with tab characters converted to the appropriate number of
spaces. Synopsis:
expand [option]… [file]…
By default, expand
converts all tabs to spaces. It preserves
backspace characters in the output; they decrement the column count for
tab calculations. The default action is equivalent to -t 8
(set
tabs every 8 columns).
The program accepts the following options. Also see Common options.
- ‘
-t tab1[,tab2]…
’
‘--tabs=tab1[,tab2]…
’ If only one tab stop is given, set the tabs
tab1
spaces apart (default is 8). Otherwise, set the tabs at columnstab1
,tab2
, … (numbered from 0), and replace any tabs beyond the last tab stop given with single spaces. Tab stops can be separated by blanks as well as by commas.As a GNU extension the last
tab
specified can be prefixed with a ‘/
’ to indicate a tab size to use for remaining positions. For example,--tabs=2,4,/8
will set tab stops at position 2 and 4, and every multiple of 8 after that.Also the last
tab
specified can be prefixed with a ‘+
’ to indicate a tab size to use for remaining positions, offset from the final explicitly specified tab stop. For example, to ignore the 1 character gutter present in diff output, one can specify a 1 character offset using--tabs=1,+8
, which will set tab stops at positions 1,9,17,…For compatibility, GNU
expand
also accepts the obsolete option syntax,-t1[,t2]…
. New scripts should use-t t1[,t2]…
instead.- ‘
-i
’
‘--initial
’ Only convert initial tabs (those that precede all non-space or non-tab characters) on each line to spaces.
An exit status of zero indicates success, and a nonzero value indicates failure.
Next: unexpand invocation, Previous: tr invocation, Up: Operating on characters [Contents][Index]