expand (Unix)

From Wikipedia, the free encyclopedia
expand
Operating systemUnix and Unix-like
PlatformCross-platform
TypeCommand

expand is a program that converts tab characters into groups of space characters, while maintaining correct alignment. It is available in Unix operating systems and many Unix-like operating systems.[1] The command is available as a separate package for Microsoft Windows as part of the UnxUtils collection of native Win32 ports of common GNU Unix-like utilities.[2]

Example[edit]

For example:

$ echo -e "foo\tbar" | expand | xxd -g 1 -u
0000000: 66 6F 6F 20 20 20 20 20 62 61 72 0A              foo     bar.
$ echo -e "foo\tbar" | xxd -g 1 -u
0000000: 66 6F 6F 09 62 61 72 0A                          foo.bar.
$

Here the echo command prints a string of text that includes a tab character, then the output is directed into the expand command. The resulting output is then displayed in hexadecimal and as characters by the xxd dump command. At the second prompt, the same echo output is sent directly to the xxd command. As can be seen by comparing the two, the expand program converts the tab (specified as '\t' to the echo program) into spaces.

See also[edit]

References[edit]

  1. ^ "expand". The Open Group Base Specifications. The Open Group. Retrieved 27 April 2023.
  2. ^ "Native Win32 ports of some GNU utilities". unxutils.sourceforge.net.

External links[edit]