Comandos.- cat (Unix)

cat concatena archivos y los imprime en la salida estándar.

Según la Wikipedia: "El comando cat (por concatenar) es un programa de Unix usado para concatenar y mostrar archivos."

Este es la contraparte de split. Cat se encarga de unir lo separa el otro.

concatenar: "1. tr. y prnl. Unir, enlazar, relacionar una cosa con otra: las desgracias se concatenaron." Wordreference

Concatena archivo(s), de la entrada estándar, a la salida estándar.

SYNOPSIS

cat [OPTION]… [FILE]…

 

cat archivo | algún_comando con argumentos…

cat opciones archivo > fichero

cat opciones archivo >> fichero

AYUDA

cat --help

man cat

info cat

OPCIONES

-A, --show-all

Equivalente a -vET

Muestra todos los caracteres de control, en general ^ y la notación M-. Un $ al final de cada linea, ^I para los tabuladores.

-b, --number-nonblank

Numerar las lineas que no estén en blanco.

-e

Equivalente a -vE

Muestra $ al final de cada linea, para los caracteres de control ^ y la notación M-

-E, --show-ends

Muestra un signo de pesos ($) al final de cada linea.

-n, --number

Numera todas las lineas de salida.

-s, --squeeze-blank

Suprime las lineas vacías repetidas y las muestra como una sola.

-t

Equivalente a -vT. Muestra los tabuladores como ^I y los caracteres de control como ^, la notación M-, excepto para fin de linea y tabuladores

-T, --show-tabs

Muestra los tabuladores como ^I

-u

(Ignora)

-v, --show-nonprinting

Para caracteres de control muestra ^ y la notación M-, excepto para fin de linea y tabuladores.

--help

Muestra la ayuda y sale.

--version

Muestra la versión y sale.

EJEMPLOS

Para estos ejemplos se usa el archivo listado.txt que se hizo para el tutorial de split. Pero sirve cualquier otro, nada más se cambia por la ruta que corresponda.

a) Muestra el fichero listado.txt

cat ~/ejercicios-para-split-y-cat/listado.txt

b) Es igual que el anterior, pero hace que la salida de cat vaya a more, mostrando por segmentos la información.

cat ~/ejercicios-para-split-y-cat/listado.txt | more

c) Este es para usar cat algo así como un procesador de textos simples. Como tiene redireccionamiento de la salida patrón con un solo > lo que se escriba en ese momento sustituye todo lo que haya estado antes. Cuando termino, para salir uso Control+C

cat > ~/ejercicios-para-split-y-cat/cat-como-procesador-simple.txt

d) Este es igual que el anterior solo que agrega lo que se escriba al final del archivo, porque el redireccionamiento de la salida patrón es >>

cat >> ~/ejercicios-para-split-y-cat/cat-como-procesador-simple.txt

e) Para unir dos o más segmentos de un fichero.

Cuando se trata de unir partes con cat funciona por igual > y >>. Prefiero usar >> sobre >.

cat fichero1 fichero2 fichero3 > ficherounido

cat fichero1 fichero2 fichero3 >> ficherounido

Cuando son muchas partes se puede usar el comodín * para la numeración.

cat fichero* > ficherounido

cat fichero* >> ficherounido

Por ejemplo las partes de un archivo rar dividido:

cat parte1de3.rar parte2de3.rar parte3de3.rar >> partesunidas.rar

O un archivo avi segmentado:

video.avi.000 video.avi.001 >> video.avi

Nota.- Si hace falta reparar el index, se usa mencoder. Ver la entrada:
http://travesuras.wordpress.com/2010/08/10/20100810-1/

Mencoder repara bien los avi's. Se usa cualquiera de estas dos líneas:

mencoder videooriginal.avi -idx -oac copy -ovc copy -o videoreparado.avi

mencoder videooriginal.avi -idx -oac copy -ovc copy -o videoreparado.avi

 

 

 

 

 

7 comentarios en “Comandos.- cat (Unix)

    1. Hola, el año pasado cuando dividia un video AVI y lo volvia a unir, tenía que reparar el index. También por esas fechas tenía un video rmvb con el index dañado, con el Totem se podía ver. Algo así debe de estar pasando contigo.
      Prueba abrirlos con mplayer haciendo que repare el index:

      mplayer -forceidx VIDEO
      mplayer -idx VIDEO

      En esta entrada hay más sobre como reparar los index:

      http://travesuras.wordpress.com/2010/08/10/20100810-1/

      Saludos

    1. > y >> son redireccionamiento de salida. Hacen que los datos de una cosa vaya hacia donde apunta > y >>, son como una flecha para indicar la dirección hacia donde debe de ir la info. Cuando utilizas > haces que los datos nuevos sustituyan a los anteriores, te borra todo pero te deja lo nuevo y cuando utilizas >> la nueva data se va agregando al final del archivo.

      Cuando haces cat *.csv >> 2011.csv los nuevos datos se van a ir agregando al final del archivo y cuando haces cat *.csv > 2011.csv se te borra todo lo anterior y son sustituidos por los nuevos.

      Hay un post en el blog sobre el redireccionamiento de salida:
      http://travesuras.wordpress.com/2009/06/01/20090601-1/

Deja un comentario