Unexpand


unexpand is a shell command that converts space characters to tab characters. Originally, developed for Unix and standardized by POSIX, it is available on many operating systems today.
In the following commands, the echo command prints a string of text that includes multiple consecutive spaces. The output is directed into. The resulting output is displayed as octal via od. At the second prompt, the same echo output is sent directly to. As shown, converts each sequence of eight spaces to a tab.

$ echo " asdf sdf" | unexpand | od -c
0000000 \t a s d f s d f
0000014
$ echo " asdf sdf" | od -c
0000000
0000020 a s d f s d f \n
0000032