Come utilizzare il comando Tronca in Linux
Benvenuti nel nostro tutorial su come utilizzare il comando truncate in Linux. Il comando truncate di Linux viene spesso utilizzato per ridurre o espandere la dimensione di ciascun FILE alla dimensione specificata. La dimensione finale del file dipende dall’iniziale. Se un FILE (ad es. file di archivio o di log) è più grande della dimensione specificata, i dati extra vengono persi, ma se un FILE è più corto, viene esteso e la parte estesa (il buco) viene letta come zero byte.
I comandi mostrati sono stati testati su computer CentOS 7 e server Ubuntu 16.04. La maggior parte delle distribuzioni Linux viene fornita con il comando truncate. Se il tuo sistema non ha un comando truncate, per il sistema Ubuntu/Debian è fornito dal pacchetto coreutils.
$ sudo apt-get install coreutils
$ dpkg -l | grep coreutils
coreutils 8.25-2ubuntu3~16.04 amd64 GNU core utilities
Per 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
Se non installato, utilizzare:
$ sudo yum-y install coreutils
Opzioni di troncamento comuni
-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
Quando usi il troncamento, taglia l’argomento deve essere un numero intero e un’unità facoltativa (esempio: 10K è 10*1024). Le unità utilizzate sono K, M, G, T, P, E, Z, Y (potenze di 1024) o KB, MB,…(come potenze di 1000).
L’argomento SIZE può essere preceduto da uno dei seguenti caratteri modificatori: ‘+‘esteso a,’–‘ridurre di’<‘al massimo,’>‘almeno,’/“arrotonda per difetto a un multiplo di”,%‘ arrotonda a un multiplo di.
Esempi di utilizzo troncato
Di seguito sono riportati gli esempi più comuni di utilizzo del comando truncate.
1. Eliminare il contenuto di un file con troncamento
# truncate -s 0 file
Ciò è utile, ad esempio, per eliminare i file di registro. Questo è meglio che eliminare manualmente un file e può fare un tocco per quello nuovo. Il processo di troncamento rimuove praticamente tutto il contenuto del file. Non elimina il file stesso, ma lo lascia su disco come file a zero byte. Ad esempio, cerchiamo di essere chiari /var/log/syslog a 0 byte utilizzando il troncamento.
# du -sh /var/log/syslog
616K /var/log/syslog
# truncate -s 0 /var/log/syslog
Se controlliamo nuovamente la dimensione del file, dovrebbe essere 0 byte.
# du -sh /var/log/syslog
0 /var/log/syslog
Si noti che il comando truncate manterrà i permessi e la proprietà dei file. Puoi confermare usando ls -lh ordini:
# ls -lh /var/log/syslog
-rw-r----- 1 syslog adm 0 Mar 17 18:34 /var/log/syslog
2. Per troncare un file a una certa dimensione
L’esempio seguente tronca un file a una dimensione di 100 byte.
# 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
Ora controlla la dimensione del file:
# ls -lh file.txt
-rw-r–r– 1 root root 100 Mar 17 18:40 file.txt
Per troncare un file 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
M, G, T, P, E, Z e Y possono essere usati al posto di “K” come richiesto.
3. Estendi la dimensione del file con il troncamento
Puoi anche espandere la dimensione del file dallo stato corrente a quello desiderato. Usa l’opzione -S insieme a + in misura.
$ 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
Ciò espanderà la dimensione del file da 100K a 300K aggiungendo altri 200K.
4. Riduci le dimensioni del file con il troncamento
Diciamo che hai un file da 500K e vuoi rimpicciolirlo 250K. Userai -S opzione con a – nella dimensione specificata. Per esempio
$ 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
Puoi vedere la dimensione attuale modificata in 250K.
Conclusione
Spero che questo tutorial ti abbia aiutato a capire il comando truncate di Linux per modificare il file alla dimensione specificata. Condividi i tuoi suggerimenti e pensieri nella sezione commenti qui sotto.