viernes, 19 de mayo de 2017

Cómo dividir, y unir, archivos, en Linux

Visitando, como siempre, mis ‘marcadores’ favoritos, me encuentro hoy con una entrada al blog de desdelinux.net, con el mismo título, que me ha recordado viejos (muy viejos…) tiempos, cuando, desde Windows, se usaba un programa clásico, el Hacha (que, por cierto, todavía existe) y que se identificaba con un icono también muy clásico, un diskette partido (diskette de los de antes, de aquellos de 1,5 MB de capacidad…), para trocear un archivo grande en partes, y luego poder unirlo. Es posible que entonces fuese una utilidad de uso más o menos habitual pero hace años (al menos en mi caso), con los pendrives, etc...  sospecho que apenas se hace uso de ello.

La nostalgia, y el ir anotando cosas sobre el funcionamiento de Linux, me lleva a escribir esta entrada. Pero voy a cambiar un poco los conceptos que plantea el mencionado Blog.
Porque, primero, voy a decir que existe una sencilla aplicación para hacer esto de cortar y pegar archivos, en entorno gráfico. Se llama ‘hoz’, está en los repositorios de Debian y se instala con
sudo aptitude install hoz hoz-gui
La aplicación es muy… ‘espartana’, ni siquiera aparece su icono en el Menu, y entonces, o bien hay que crear un Lanzador en el Escritorio o bien, lo que puede ser mejor, hay que editar el menú (con ‘alacarte’ o, en Cinnamon, con Menu-Configurar-abrir editor de Menu) y, por ejemplo en Accesorios, Añadir  un nuevo Elemento con
Name: Cortar y Unir archivos (con Hoz)
Command: ghoz

(caramba, podían haber puesto, como comando, simplemente 'hoz', me costó encontrarlo). Pero bueno, finalmente le pongo el icono que me apetezca, y ya está.

A partir de aquí, hay que decir que el funcionamiento de esta aplicación 'Hoz', también es 'escasamente amigable’.
De entrada te aparece una pantalla (sin ninguna ayuda) donde tienes que fijar...
1º: (¡importante...!) el tamaño (parcial) de los archivos cortados (lo más fácil es ponerlo en megas (MiB) y el valor que quieras (por ejemplo, 20 MiB), y 
2º: el Directorio de destino (por defecto, la raiz de la /home de tu usuario, pero sospecho (por mis pruebas) que no toma bien el cambio de directorio de destino así que, si no encuentras los archivos, ya sabes donde buscarlos).
Y ahora, para CORTAR… pinchas en ‘Cortar’ y en la nueva pantalla, buscas y seleccionas el archivo a dividir, aceptas… y te crea los archivos NombreArchivo.0, NombreArchivo.1… NombreArchivo.n

y para UNIR… más sencillo: Vuelves a hacer lo mismo, pinchas en ‘Pegar’, buscas los archivos, seleccionas el primer archivo (identificado con *.0’) y Aceptar. Hay que seleccionar solo el primero, el '0', y con ello se unen todos.

El proceso es, en general, bastante (o muy...) rápido

Pero aún es más rápido si usas la consola. Y para eso se emplean dos comandos bastante potentes: split y cat
Y se hace así: abres una terminal en la ruta donde se encuentra el archivo a dividir y...
Para cortar
el comando básico es…
split nombre_archivo -b 20MB (por supuesto, lo de '20MB' es orientativo). Pero es más cómodo usar este otro
split nombre_archivo -b 20MB -d nombre_archivo-
(la razón: split, por defecto, te llama ‘x’ al archivo dividido, seguido de dos caracteres extras, letras aa, ab, ac… para distinguir las partes. Lo que le estamos diciendo, con el segundo comando, es que a los archivos cortados les llame ‘nombre_archivo-’ seguido (parámetro -d) de un número (01, 02, 03...)

Para unir
Aun mas sencillo: abierta una consola en la carpeta (ruta) donde están los archivos, basta escribir
cat nombre_archivo-* > nombre_archivo  

(Nota final: por supuesto, estoy probando hacer estas cosas, y me llevo la sorpresa de que, si no añado el guión final (’-’) al ‘nombre_archivo’, para que los archivos partidos sean del tipo... ‘nombre_archivo-00, nombre_archivo-01…) al hacer el cat… me sale, al unir, con un volumen doble del previsto. 
Curioso... pero como solo son pruebas, porque sospecho que seguiré sin usarlo (bueno, si, a lo mejor para enviar por correo, por partes, algún archivo grande... aunque para eso ya está el DropBox, claro...), pues aquí queda la cosa.

Apéndice: Unir archivos de audio
Voy a añadir una aplicación práctica interesante, por lo sencilla: para unir (por ejemplo) tres archivos de audio, bastaría escribir...
cat audio1.mp3 audio2.mp3 audio3.mp3 > audiounido.mp3
o, en plan genérico, colocando todos los audios a unir en una carpeta... 
cat *.mp3  > audiounido.mp3
Más fácil, imposible. Se pueden unir también otros formatos: ogg, wav, flac, etc. Lo que, lógicamente, no conviene hacer es crear un archivo uniendo audios de varios formatos, mejor unificarlos, por ejemplo con el 'Conversor de audio' ('soundconverter') que seguramente se instala por defecto o que, en todo caso, siempre es bueno tener instalado, y está en los repositorios.

No hay comentarios:

Publicar un comentario