Fmt (Unix)

The command in Unix, Plan 9, Inferno, and Unix-like operating systems is used to format natural language text for humans to read.
Overview.
The command has been traditionally used to reformat email messages after composition and prior to delivery. Its syntax is similar among various Unixes, but not identical. attempts to break, fill and join input lines to produce globally optimal, balanced output with the lengths of each line approaching the target width as closely as possible, rather than wrapping the input lines exactly as (from GNU Core Utilities) does.
In most implementations of , the word wrap optimization procedure usually requires two criteria: the target output line width, and the maximum acceptable line width (which should be larger than the previous one to give room for optimization). It might be not always possible to give these two options simultaneously. For example, early versions of GNU can only accept the maximum width option, which is given by switch, or directly as the first command line option for compatibility (later versions use to specify the goal width and for the maximum width). See the Solaris man page for and FreeBSD manual entry for for detailed examples, and compare with the latest documentation of GNU utility included by most Linux distributions. See also the Plan 9 man page.
Unlike , has no Unicode support, and does not support text justification.
Example.
Given text like this as input:
After passing this through , the width of each line is at most 50 characters and the text flows within this constraint: