5 způsobů, jak vyprázdnit nebo odstranit obsah velkého souboru v Linuxu

, Author

Při práci se soubory v terminálu Linuxu můžete občas chtít vymazat obsah souboru, aniž byste jej museli nutně otevírat pomocí některého z editorů příkazového řádku Linuxu. Jak toho lze dosáhnout? V tomto článku si projdeme několik různých způsobů vyprázdnění obsahu souboru pomocí několika užitečných příkazů.

Upozornění: Než se pustíme do prohlížení různých způsobů, upozorňujeme, že vzhledem k tomu, že v Linuxu je všechno soubor, musíte se vždy ujistit, že soubor(y), který(é) vyprazdňujete, nejsou důležité uživatelské nebo systémové soubory. Vymazání obsahu důležitého systémového nebo konfiguračního souboru by mohlo vést k fatální chybě nebo selhání aplikace/systému.

Níže jsou uvedeny způsoby vymazání obsahu souborů z příkazového řádku.

Důležité: Pro účely tohoto článku jsme v následujících příkladech použili soubor access.log.

Vymazání obsahu souboru přesměrováním na Null

Nejjednodušší způsob, jak vyprázdnit nebo vymazat obsah souboru pomocí shellového přesměrování null (neexistující objekt) na soubor, jak je uvedeno níže:

# > access.log
Vyprázdnění velkého souboru pomocí přesměrování na Null v Linuxu
Vyprázdnění velkého souboru pomocí přesměrování na Null v Linuxu

Vyprázdnění souboru pomocí přesměrování příkazem ‚true‘

Zde použijeme symbol : je vestavěný příkaz shellu, který je svou podstatou ekvivalentní příkazu true a lze jej použít jako no-op (žádná operace).

Jiný způsob je přesměrovat výstup : nebo true vestavěného příkazu do souboru takto:

# : > access.logOR # true > access.log
Prázdný velký soubor pomocí příkazů Linuxu
Prázdný velký soubor pomocí příkazů Linuxu

Prázdný soubor pomocí nástrojů cat/cp/dd s /dev/null

Zařízení null se v Linuxu v podstatě využívá pro zahazování nežádoucích výstupních toků procesu, případně jako vhodný prázdný soubor pro vstupní toky. To se obvykle provádí mechanismem přesměrování.

A soubor zařízení /dev/null je tedy speciální soubor, který odepisuje (odstraňuje) jakýkoli vstup, který je do něj odeslán, nebo je jeho výstup stejný jako u prázdného souboru.

Dále můžete obsah souboru vyprázdnit tak, že do něj (souboru) přesměrujete výstup /dev/null jako vstup pomocí příkazu cat:

# cat /dev/null > access.log
Prázdný soubor pomocí příkazu cat
Prázdný soubor pomocí příkazu cat

Dále použijeme příkaz cp k vyprázdnění obsahu souboru podle obrázku.

# cp /dev/null access.log
Prázdný obsah souboru pomocí příkazu cp
Prázdný obsah souboru pomocí příkazu cp

V následujícím příkazu if znamená vstupní soubor a of odkazuje na výstupní soubor.

# dd if=/dev/null of=access.log
Prázdný obsah souboru pomocí příkazu dd
Prázdný obsah souboru pomocí příkazu dd

Prázdný soubor pomocí příkazu echo

Zde můžete použít příkaz echo s prázdným řetězcem a přesměrovat jej do souboru následujícím způsobem:

# echo "" > access.logOR# echo > access.log
Prázdný soubor pomocí příkazu echo
Prázdný soubor pomocí příkazu echo

Poznámka: Měli byste mít na paměti, že prázdný řetězec není totéž co nula. Řetězec je již objektem stejně jako může být prázdný, zatímco null jednoduše znamená neexistenci objektu.

Z tohoto důvodu, když přesměrujete výstup z výše uvedeného příkazu echo do souboru a zobrazíte obsah souboru pomocí příkazu cat, je vypsán prázdný řádek (prázdný řetězec).

Chcete-li do souboru poslat nulový výstup, použijte příznak -n, který říká příkazu echo, aby nevypisoval koncový nový řádek, který vede do prázdného řádku vytvořeného v předchozím příkazu.

# echo -n "" > access.log
Prázdný soubor pomocí nulového přesměrování
Prázdný soubor pomocí nulového přesměrování

Prázdný soubor pomocí příkazu truncate

Příkaz truncate pomáhá zmenšit nebo zvětšit velikost souboru na definovanou velikost.

Můžete jej použít s volbou -s, která určuje velikost souboru. Chcete-li obsah souboru vyprázdnit, použijte velikost 0 (nula) jako v následujícím příkazu:

# truncate -s 0 access.log
Zrušit obsah souboru v Linuxu
Zrušit obsah souboru v Linuxu

To je prozatím vše, v tomto článku jsme se zabývali několika způsoby vymazání nebo vyprázdnění obsahu souboru pomocí jednoduchých nástrojů příkazového řádku a mechanismu přesměrování shellu.

Tyto nejsou pravděpodobně jediné dostupné praktické způsoby, jak to provést, takže nám můžete prostřednictvím níže uvedené části pro zpětnou vazbu sdělit i další metody, které v tomto návodu nebyly zmíněny.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.