Weboldal keresés

5 módszer egy nagy fájltartalom kiürítésére vagy törlésére Linux alatt


Alkalmanként, amikor egy Linux-terminálon lévő fájlokkal foglalkozik, előfordulhat, hogy törölnie kell egy fájl tartalmát anélkül, hogy feltétlenül megnyitná azt bármely Linux parancssori szerkesztővel. Hogyan lehet ezt elérni?

Ebben a cikkben a fájltartalom ürítésének számos módját fogjuk áttekinteni néhány hasznos parancs segítségével.

Vigyázat: Mielőtt megvizsgálnánk a különböző módokat, vegye figyelembe, hogy mivel Linuxban minden fájl, mindig meg kell győződnie arról, hogy az üríteni kívánt fájl(ok) nem fontos felhasználói vagy rendszerfájlok. . Egy kritikus rendszer vagy konfigurációs fájl tartalmának törlése végzetes alkalmazás-/rendszerhibához vagy hibához vezethet.

Ezzel együtt az alábbiakban bemutatjuk a fájltartalom parancssorból való törlésének módjait.

Fontos: jelen cikkben az access.log fájlt használtuk a következő példákban.

1. Ürítse ki a fájl tartalmát nullára való átirányítással

A legegyszerűbb módja a fájltartalom ürítésének a shell null (nem létező objektum) átirányításával a fájlra az alábbiak szerint:

> access.log

2. Ürítse ki a fájlt a „true” Command Redirection használatával

Itt a szimbólumot fogjuk használni: egy shell beépített parancs, amely lényegében egyenértékű a true paranccsal, és no-op (nincs művelet)ként használható. .

Egy másik módszer a beépített : vagy true parancs kimenetének átirányítása a fájlba, így:

: > access.log
OR 
true > access.log

3. Fájl ürítése A cat/cp/dd segédprogramok használatával a /dev/null paranccsal

Linuxban a null eszköz alapvetően egy folyamat nem kívánt kimeneti adatfolyamainak eldobására szolgál, vagy megfelelő üres fájlként a bemeneti adatfolyamokhoz. Ez általában egy átirányítási mechanizmussal történik.

A /dev/null eszközfájl tehát egy speciális fájl, amely leír (eltávolít) minden rá küldött bemenetet, vagy a kimenete megegyezik egy üres fájléval.

Ezenkívül kiürítheti egy fájl tartalmát úgy, hogy a /dev/null kimenetét átirányítja rá (fájlra) bemenetként a cat paranccsal:

cat /dev/null > access.log

Ezután a cp paranccsal kiürítjük a fájl tartalmát az ábrán látható módon.

cp /dev/null access.log

A következő dd parancsban az if a bemeneti fájlt, az of pedig a kimeneti fájlt jelenti.

dd if=/dev/null of=access.log

4. Ürítse ki a fájlt az echo Command használatával

Itt használhat egy echo parancsot üres karakterlánccal, és a következőképpen irányíthatja át a fájlba:

echo "" > access.log
OR
echo > access.log

Megjegyzés: Ne feledje, hogy az üres karakterlánc nem egyenlő a nullával. A karakterlánc már egy objektum, bármennyire üres is, míg a null egyszerűen egy objektum nemlétét jelenti.

Emiatt, amikor átirányítja a fenti echo parancsot a fájlba, és a fájl tartalmát a cat paranccsal tekinti meg, üres sort nyomtat (üres karakterlánc).

Ha nulla kimenetet szeretne küldeni a fájlnak, használja a -n jelzőt, amely arra utasítja az echo-t, hogy ne adja ki a záró újsort, amely az előző parancsban létrehozott üres sorhoz vezet.

echo -n "" > access.log

5. Ürítse ki a fájlt a csonka parancs használatával

A csonkítás parancs segít csökkenteni vagy kiterjeszteni a fájl méretét egy meghatározott méretre.

Használhatja a fájl méretét meghatározó -s opcióval. A fájl tartalmának kiürítéséhez használjon 0 (nulla) méretet, mint a következő parancsban:

truncate -s 0 access.log

Egyelőre ennyi, ebben a cikkben a fájltartalom törlésének vagy ürítésének számos módszerét ismertetjük egyszerű parancssori segédprogramok és shell-átirányítási mechanizmusok használatával.

Valószínűleg nem ezek az egyetlen elérhető gyakorlati módok ennek megvalósítására, ezért az alábbi visszajelzési részben közölhet minden más, ebben az útmutatóban nem említett módszert is.