Bienvenido a nuestro tutorial sobre cómo usar el comando truncar en Linux. El comando truncar de Linux se usa a menudo para reducir o extender el tamaño de cada ARCHIVO al tamaño especificado. El tamaño final del archivo depende del inicial. Si un ARCHIVO (para example archivo o archivos de registro) es mayor que el tamaño especificado, los datos adicionales se pierden, pero si un ARCHIVO es más corto, se extiende y la parte extendida (agujero) se lee como cero bytes.
Los comandos que se muestran se probaron en la máquina CentOS 7 y el servidor Ubuntu 16.04. La mayoría de las distribuciones de Linux se envían con el comando truncate. Si su sistema no tiene un comando truncar, para el sistema Ubuntu / Debian, lo proporciona el paquete coreutils.
$ sudo apt-get install coreutils
$ dpkg -l | grep coreutils
coreutils 8.25-2ubuntu3~16.04 amd64 GNU core utilities
Para CentOS 7:
# yum provides truncate
coreutils-8.22-18.el7.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo : base
Matched from:
Filename : /usr/bin/truncate
Si no está instalado, use:
$ sudo yum-y install coreutils
Opciones de truncado comunes
-c, --no-create --> do not create any files
-o, --io-blocks --> treat SIZE as number of IO blocks instead of bytes
-r, --reference=RFILE --> base size on RFILE
-s, --size=SIZE --> set or adjust the file size by SIZE bytes
--help --> display this help and exit
--version --> output version information and exit
Cuando se usa truncar, el TALLA El argumento debe ser un número entero y una unidad opcional (example: 10K es 10 * 1024). Las Unidades tal como se utilizan son K, M, G, T, P, E, Z, Y (potencias de 1024) o KB, MB, … (como potencias de 1000).
El argumento SIZE también puede tener como prefijo uno de los siguientes caracteres modificadores: ‘+‘extender por’–‘ reducir por, ‘<‘como mucho’>‘ por lo menos, ‘/‘redondear a múltiplo de’%‘redondear a múltiplo de.
Ejemplos de uso truncado
A continuación se muestran los ejemplos de uso más comunes del comando truncate.
1. Borrar contenido de un archivo con truncar
# truncate -s 0 file
Esto es útil, por ejemplo, para borrar archivos de registro. Esto es mejor que eliminar manualmente un archivo y tal vez hacer un toque para el nuevo. El proceso de truncamiento básicamente elimina todo el contenido del archivo. No elimina el archivo en sí, pero lo deja en el disco como un archivo de cero bytes. Como un example, aclaremos nuestro / var / log / syslog a 0 bytes usando truncar.
# du -sh /var/log/syslog
616K /var/log/syslog
# truncate -s 0 /var/log/syslog
Si volvemos a comprobar el tamaño del archivo, debería ser 0 bytes.
# du -sh /var/log/syslog
0 /var/log/syslog
Tenga en cuenta que el comando truncar conservará los permisos y la propiedad del archivo. Puede confirmar usando ls -lh comandos:
# ls -lh /var/log/syslog
-rw-r----- 1 syslog adm 0 Mar 17 18:34 /var/log/syslog
2. Para truncar un archivo a un tamaño específico
El example a continuación, se truncará un archivo a un tamaño de 100 bytes.
# touch file.txt
# ls -lh file.txt
-rw-r--r-- 1 root root 0 Mar 17 18:39 file.txt
# truncate -s 100 file.txt
Ahora verifique el tamaño del archivo:
# ls -lh archivo.txt
-rw-r – r– 1 raíz raíz 100 17 de marzo 18:40 file.txt
Para truncar un archivo a 100 KB:
# truncate -s 100K file.txt
# ls -lh file.txt
-rw-r--r-- 1 root root 100K Mar 17 18:41 file.txt
Se pueden usar M, G, T, P, E, Z e Y en lugar de “K” según sea necesario.
3. Amplíe el tamaño del archivo con truncar
También puede extender el tamaño del archivo desde el estado actual al deseado. Usa la opción -s con un + en tamaño.
$ touch file.txt
$ truncate -s 100K file.txt
$ ls -lh file.txt
-rw-r--r-- 1 jmutai wheel 100K Mar 18 13:12 file.txt
$ truncate -s +200K file.txt
$ ls -lh file.txt
-rw-r--r-- 1 jmutai wheel 300K Mar 18 13:12 file.txt
Esto ampliará el tamaño del archivo de 100K a 300K agregando 200K adicionales.
4. Reducir el tamaño del archivo con truncar
Supongamos que tiene un archivo de 500 K y le gustaría reducirlo a 250K. Usarás el -s opción con un – en tamaño especificado. P.ej
$ ls -lh file.txt -rw-r--r-- 1 jmutai wheel 500K Mar 18 13:15 file.txt
$ truncate -s -250K file.txt
$ ls -lh file.txt
-rw-r--r-- 1 jmutai wheel 250K Mar 18 13:15 file.txt
Puede ver el tamaño actual cambiado a 250K.
Conclusión
Espero que este tutorial le haya ayudado a comprender el comando truncar de Linux para modificar el archivo al tamaño especificado. Comparta su sugerencia y pensamientos sobre la sección de comentarios a continuación.