Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ csplit(1) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ed(1)

sh(1)



csplit(1)                USER COMMANDS                  csplit(1)



NAME
     csplit - context split

SYNOPSIS
     csplit [-s] [-k] [-f prefix] file arg1 [...  argn]

DESCRIPTION
     csplit reads  file  and  separates  it  into  n+1  sections,
     defined  by  the arguments arg1...argn.  By default the sec-
     tions are placed in xx00...xxn (n may not  be  greater  than
     99).  These sections get the following pieces of file:

       00:   From the start of file up to (but not including) the
             line referenced by arg1.
       01:   From the line referenced by  arg1  up  to  the  line
             referenced by arg2.
             .
             .
             .
       n:    From the line referenced by argn to the end of file.

     If the file argument is a -, then standard input is used.

     The options to csplit are:

       -s        csplit normally prints the character counts  for
                 each file created.  If the -s option is present,
                 csplit suppresses the printing of all  character
                 counts.

       -k        csplit normally  removes  created  files  if  an
                 error  occurs.   If  the  -k  option is present,
                 csplit leaves previously created files intact.

       -f prefix If the -f option is used, the created files  are
                 named   prefix00...prefixn.    The   default  is
                 xx00...xxn.

     The arguments (arg1...argn) to csplit can be  a  combination
     of the following:

       /rexp/    A file is to be created for the section from the
                 current  line up to (but not including) the line
                 containing the  regular  expression  rexp.   The
                 current  line  becomes the line containing rexp.
                 This argument may be followed by an  optional  +
                 or - some number of lines (e.g., /Page/-5).  See
                 ed(1) for a description of how to specify a reg-
                 ular expression.

       %rexp%    This argument is the same as /rexp/, except that
                 no file is created for the section.



                                                                1





csplit(1)                USER COMMANDS                  csplit(1)



       lnno      A file is to be created from the current line up
                 to  (but  not including) lnno.  The current line
                 becomes lnno.

       {num}     Repeat argument.  This argument may  follow  any
                 of  the  above  arguments.  If it follows a rexp
                 type argument, that argument is applied num more
                 times.   If  it  follows  lnno, the file will be
                 split every lnno lines  (num  times)  from  that
                 point.

     Enclose all rexp type arguments that contain blanks or other
     characters  meaningful  to  the  shell  in  the  appropriate
     quotes.  Regular expressions may not contain  embedded  new-
     lines.   csplit does not affect the original file; it is the
     user's responsibility to  remove  it  if  it  is  no  longer
     wanted.

EXAMPLES
          csplit -f cobol  file  '/procedure  division/'  /par5./
          /par16./

     This example creates four files,  cobol00...cobol03.   After
     editing  the ``split'' files, they can be recombined as fol-
     lows:

          cat cobol0[0-3] > file

     Note that this example overwrites the original file.

          csplit -k file 100 {99}

     This example splits the file  at  every  100  lines,  up  to
     10,000  lines.  The -k option causes the created files to be
     retained if there are less than 10,000  lines;  however,  an
     error message would still be printed.

          csplit -k prog.c '%main(%' '/^}/+1' {20}

     If prog.c follows the normal C coding convention  (the  last
     line  of a routine consists only of a } in the first charac-
     ter position), this example creates a file for each separate
     C routine (up to 21) in prog.c.

SEE ALSO
     ed(1), sh(1).

DIAGNOSTICS
     Self-explanatory except for:
          arg - out of range





                                                                2





csplit(1)                USER COMMANDS                  csplit(1)



     which means that the given argument did not reference a line
     between the current position and the end of the file.





















































                                                                3



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026