lunes, 19 de diciembre de 2011

Dividir archivos en Unix

Resulta que hace unos días necesitaba consultar el log del servidor de producción, y me encontré que pesaba nada menos que ¡400 megas!. Intentar abrir algo así con mi portátil era misión imposible, porque el pobre ya no está para esos trotes, así que necesitaba una solución alternativa.

Una buena opción para estos casos son los programas que dividen archivos. En Windows hay varias alternativas como el hacha o el hjsplit, pero, ¿qué pasa si estamos en sistemas Unix? Pues después de un buen rato buscando, resulta que averigüé que no necesitamos ninguna herramienta, sino que podemos utilizar directamente el comando split. Su sintaxis es:

split [parametros] [archivo_origen] [archivo_salida]

Si no especificamos parámetros, el archivo se divide en nuevos archivos de mil líneas, y a cada uno se le nombra como archivo_salida (o x si no se especifica ese parámetro), con el prefijo aa, ab, ac, etc. También podemos pasarle un guión como archivo_origen, y el comando dividirá lo que reciba por la entrada estándar.

Los parámetros nos permiten adecuar el funcionamiento del comando a nuestras necesidades. El más interesante para mis necesidades era el que modificaba el tamaño de los ficheros obtenidos:

-b valor indica el tamaño de los ficheros en número de bytes (también se puede usar -bytes=valor)

Y tampoco me extiendo más, porque su uso es simple, y su documentación es perfectamente clara. Lo importante es saber que está ahí si lo necesitamos.

No hay comentarios:

Publicar un comentario

Cualquier aportación será bienvenida