GNU/Linux >> Znalost Linux >  >> Linux

Jak používat příkaz Truncate v Linuxu

Vítejte v našem tutoriálu, jak používat příkaz zkrátit v Linuxu. Příkaz zkrátit Linux se často používá ke zmenšení nebo rozšíření velikosti každého SOUBORu na zadanou velikost. Konečná velikost souboru závisí na iniciále. Pokud je SOUBOR (například archiv nebo soubory protokolu) větší než zadaná velikost, nadbytečná data se ztratí, ale pokud je SOUBOR kratší, rozšíří se a rozšířená část (díra) se čte jako nula bajtů.

Zobrazené příkazy byly testovány na počítači CentOS 7 a serveru Ubuntu 16.04. Většina distribucí Linuxu se dodává s příkazem truncate. Pokud váš systém nemá příkaz zkrátit, pro systém Ubuntu/Debian jej poskytuje balíček coreutils.

$ sudo apt-get install coreutils
$ dpkg -l | grep coreutils
coreutils 8.25-2ubuntu3~16.04 amd64 GNU core utilities

Pro 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

Pokud není nainstalován, použijte:

$ sudo yum-y install coreutils

Běžné možnosti zkrácení

-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

Při použití zkrátit VELIKOST argument musí být celé číslo a volitelná jednotka (příklad:10K je 10*1024). Použité jednotky jsou K, M, G, T, P, E, Z, Y (mocniny 1024) nebo KB, MB ,...(jako mocniny 1000).

Před argumentem SIZE může být také jeden z následujících modifikujících znaků:'+ ' rozšířit o, '- ' snížit o, '< ' maximálně ' ' alespoň '/ ' zaokrouhlit dolů na násobek, '% ' zaokrouhlit nahoru na násobek.

Příklady použití zkrácení

Níže jsou uvedeny nejběžnější příklady použití příkazu truncate.

1. Vymazat obsah souboru pomocí zkrácení

# truncate -s 0 file

To je užitečné například pro soubory mazání protokolů. Je to lepší, než ručně mazat soubor a možná se dotknout nového. Proces zkrácení v podstatě odstraní veškerý obsah souboru. Samotný soubor neodstraní, ale ponechá jej na disku jako soubor s nulovým bajtem. Jako příklad vyčistíme /var/log/syslog na 0 bajtů pomocí zkrácení.

# du -sh /var/log/syslog
616K /var/log/syslog

# truncate -s 0 /var/log/syslog

Pokud znovu zkontrolujeme velikost souboru, měla by být 0 bajtů.

# du -sh /var/log/syslog
0 /var/log/syslog

Všimněte si, že příkaz zkrátit si zachová oprávnění k souboru a vlastnictví. Můžete to potvrdit pomocí ls -lh příkazy:

# ls -lh /var/log/syslog
-rw-r----- 1 syslog adm 0 Mar 17 18:34 /var/log/syslog

2. Zkrácení souboru na určitou velikost

Níže uvedený příklad zkrátí soubor na velikost 100 bajtů.

# 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

Nyní zkontrolujte velikost souboru:

# ls -lh soubor.txt
-rw-r--r-- 1 kořenový adresář 100 17. března 18:40 soubor.txt

Chcete-li zkrátit soubor na 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 a Y lze podle potřeby použít místo "K".

3. Rozšiřte velikost souboru pomocí zkrácení

Můžete také rozšířit velikost souboru z aktuálního do požadovaného stavu. Použijte možnost -s s + ve velikosti.

$ 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

Tím se zvětší velikost souboru ze 100 kB na 300 kB přidáním dalších 200 kB.

4. Zmenšete velikost souboru pomocí zkrácení

Řekněme, že máte soubor o velikosti 500 kB a chtěli byste jej zmenšit na 250 kB. Použijete -s možnost s - v uvedené velikosti. Např.

$ 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

Můžete vidět aktuální velikost změněnou na 250 kB.

Závěr

Tento tutoriál, doufám, vám pomohl porozumět příkazu zkrácení Linuxu ke změně souboru na zadanou velikost. Podělte se o své návrhy a myšlenky v sekci komentářů níže.


Linux
  1. Jak používat příkaz Tar v Linuxu

  2. Jak používat Su Command v Linuxu

  3. Jak používat příkaz tar pod Linuxem

  1. Jak používat příkaz Disown v Linuxu

  2. Jak používat příkaz md5sum v Linuxu

  3. Jak používat příkaz Linux SS

  1. Jak používat dotykový příkaz v Linuxu

  2. Jak používat příkaz Linux head

  3. Jak používat příkaz Linux diff