Operating system | Unix and Unix-like |
---|---|
Platform | Cross-platform |
Type | Command |
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]
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.
File system | |
---|---|
Processes | |
User environment | |
Text processing | |
Shell builtins | |
Searching | |
Documentation | |
Software development | |
Miscellaneous | |
|
GNU Core Utilities command-line interface programs | |
---|---|
File system | |
Text utilities | |
Shell utilities |