A veces necesitamos borrar el contenido de un archivo sin eliminar el archivo en sí. Para esto, Linux ofrece el comando truncate, que permite aumentar o disminuir el tamaño de un archivo de forma rápida y sencilla, sin modificar sus permisos ni su propietario.
El tamaño final del archivo depende del tamaño especificado en el comando. Si el nuevo tamaño es menor que el original, se perderán datos; si es mayor, se agregarán bytes nulos.
A continuación, te mostramos cómo usar truncate con ejemplos prácticos.
Instalación de los paquetes Coreutils
El comando truncate está incluido en el paquete coreutils, que viene preinstalado en casi todas las distribuciones de Linux. En casos raros (como sistemas minimalistas), puedes instalarlo con:
sudo apt-get install coreutils # Para Debian/Ubuntu
sudo dnf install coreutils # Para Fedora
sudo pacman -S coreutils # Para Arch LinuxPara verificar si coreutils está instalado, usa:
dpkg -l | grep coreutils # Para Debian/Ubuntu
rpm -q coreutils # Para Fedora
pacman -Qs coreutils # Para Arch Linux¿Cómo usar el comando Truncate?
El comando truncate se usa principalmente con la opción -s para definir el tamaño del archivo. También existen alternativas en el shell para truncar archivos, pero aquí nos enfocaremos en truncate.
Limpiar el contenido de un archivo
Para vaciar un archivo y dejarlo con cero bytes, usa la opción -s 0. Esto no elimina el archivo, solo su contenido, manteniendo permisos y propietario.
Ejemplo con archivo.txt:
truncate -s 0 archivo.txtConfirma el tamaño con:
ls -lh archivo.txtOtras formas de truncar archivos
Además de truncate, puedes usar redirecciones del shell para vaciar un archivo:
- Usando el operador
>:
: > archivo.txt- Usando
/dev/null:
cat /dev/null > archivo.txtAmbos métodos logran el mismo resultado, pero truncate es más flexible para otros casos.
Truncar un archivo a un tamaño específico
Para establecer un tamaño exacto, usa -s seguido del tamaño deseado. Puedes usar unidades como K (kilobytes), M (megabytes), G (gigabytes), etc.
Crea un archivo nuevo:
touch archivo.txtTrúncalo a 100 bytes:
truncate -s 100 archivo.txtVerifica el tamaño:
ls -lh archivo.txtPara establecer un tamaño de 300 KB:
truncate -s 300K archivo.txtConfirma con:
ls -lh archivo.txtCrear un archivo nuevo con un tamaño específico
Si el archivo no existe, truncate lo crea automáticamente. Por ejemplo, para crear un archivo de 1 MB:
truncate -s 1M nuevo_archivo.txtVerifica con:
ls -lh nuevo_archivo.txtAumentar el tamaño de un archivo
Para incrementar el tamaño de un archivo, usa + con -s. Por ejemplo, si archivo.txt es de 300 KB y quieres aumentarlo a 600 KB:
truncate -s +300K archivo.txtConfirma el nuevo tamaño:
ls -lh archivo.txtDisminuir el tamaño de un archivo
Para reducir el tamaño, usa - con -s. Si archivo.txt es de 600 KB y quieres reducirlo a 330 KB (restando 270 KB):
truncate -s -270K archivo.txtEl tamaño final será 330 KB. Verifica con:
ls -lh archivo.txtObtener ayuda
Para más detalles sobre truncate, usa:
truncate --helpVerificar la versión
Para saber qué versión de truncate tienes, usa:
truncate --versionConclusión
Truncate es un comando muy útil para eliminar el contenido de un archivo sin borrar el archivo. También puedes cambiar el tamaño del archivo al tamaño que necesites. En este artículo, hemos aprendido cómo truncar el contenido de un archivo, así como cómo reducir o ampliar archivos.
¿Qué te parece?
Es bueno conocer tu opinión. Deja un comentario.