Inicio·Comandos de terminal

csplit

Procesado de texto

Uso

csplit [file] '/[pattern]/' '{*}'

Corta un archivo donde aparece un patrón, no a un tamaño fijo; los números que imprime son bytes, y {*} significa repetir tantas veces como coincida.

Opciones habituales

OpciónSignificado
-fPrefix for the output names; the default is xx
-nHow many digits the number has
-kKeep the files already written if it fails partway
-sDo not print the byte count of each piece
-zGNU: throw away pieces that came out empty
{*}Repeat the pattern as many times as it matches

Ejemplos

csplit -z -f part_ log.txt '/^ERROR/' '{*}'

A new file at every ERROR line.

csplit book.txt 100 200

Splits at lines 100 and 200.

Están hechos para encadenarse con tuberías. Tres comandos unidos suelen ser más cortos que uno que lo haga todo.

Cómo leerlo

  • Los corchetes [ ] marcan una parte que puedes omitir.
  • Los puntos suspensivos … indican que puedes poner varios.
  • Las opciones distinguen mayúsculas: en algunos comandos -r y -R no hacen lo mismo.

Preguntas

Q. ¿Qué hace csplit?

Corta un archivo donde aparece un patrón, no a un tamaño fijo; los números que imprime son bytes, y {*} significa repetir tantas veces como coincida.

Q. ¿Cómo se escribe?

csplit [file] '/[pattern]/' '{*}' — los corchetes marcan lo que puedes omitir.

Q. ¿Cuántas opciones vale la pena saber?

Aquí van 6; la lista completa está en man csplit. Este comando está en Procesado de texto.

Comandos relacionados

página man: man csplit