fold - filter for folding lines


     fold [-bs] [-w width | -width]  [file...]


     The fold utility is a filter that will fold lines  from  its
     input  files,  breaking the lines to have a maximum of width
     column positions (or bytes, if the -b option is  specified).
     Lines will be broken by the insertion of a NEWLINE character
     such that each output line (referred to later in  this  sec-
     tion  as  a segment) is the maximum width possible that does
     not exceed the specified  number  of  column  positions  (or
     bytes). A line will not be broken in the middle of a charac-
     ter. The behavior is undefined if width  is  less  than  the
     number  of  columns  any single character in the input would

     If the CARRIAGE-RETURN, BACKSPACE,  or  TAB  characters  are
     encountered  in  the  input, and the -b option is not speci-
     fied, they will be treated specially:

           The current count of line width will be decremented by
           one,  although  the  count never will become negative.
           fold will not insert a NEWLINE  character  immediately
           before or after any BACKSPACE character.

           The current count of line width will be set to 0. fold
           will not insert a NEWLINE character immediately before
           or after any CARRIAGE-RETURN character.

     TAB   Each TAB character encountered will advance the column
           position  pointer to the next tab stop. Tab stops will
           be at each column position n  such  that  n  modulo  8
           equals 1.


     The following options are supported:

     -b    Counts width in bytes rather than column positions.

     -s    If a segment of a  line  contains  a  blank  character
           within  the  first  width column positions (or bytes),
           breaks the line after the last  such  blank  character
           meeting  the  width  constraints. If there is no blank
           character meeting the requirements, the -s option will
           have  no  effect  for that output segment of the input

     -w width|-width
           Specifies the maximum line length, in column positions
           (or bytes if -b is specified). If width is not a posi-
           tive decimal number, an error is returned. The default
           value is 80.


     The following operand is supported:

     file  A path name of a text file to be folded.  If  no  file
           operands  are  specified,  the  standard input will be


     Example 1: Submitting a file of possibly long lines  to  the
     line printer

     An example invocation that submits a file of  possibly  long
     lines  to  the  line  printer (under the assumption that the
     user knows the line width of the printer to be  assigned  by

     example% fold -w 132 bigfile | lp


     See environ(5) for descriptions of the following environment
     variables  that  affect the execution of fold: LANG, LC_ALL,


     The following exit values are returned:

     0     All input files were processed successfully.

     >0    An error occurred.


     See attributes(5) for descriptions of the  following  attri-

    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | Availability                | SUNWcsu                     |
    | CSI                         | enabled                     |
    | Interface Stability         | Standard                    |


     cut(1), pr(1), attributes(5), environ(5), standards(5)


     fold and cut(1) can be used to  create  text  files  out  of
     files  with arbitrary line lengths. fold should be used when
     the contents of long lines need to be kept  contiguous.  cut
     should  be  used when the number of lines (or records) needs
     to remain constant.

     fold is frequently used to send text files to line  printers
     that  truncate,  rather  than  fold,  lines  wider  than the
     printer is able to print (usually 80  or  132  column  posi-

     fold may not work correctly if underlining is present.

Man(1) output converted with man2html