5 Modi biex Tbattal jew Ħassar Kontenut ta 'Fajl Kbir fil-Linux


Kultant, waqt li tittratta fajls fit-terminal tal-Linux, tista 'tkun trid tnaddaf il-kontenut ta' fajl mingħajr ma neċessarjament tiftaħha billi tuża xi edituri tal-linja tal-kmand Linux. Kif jista' jinkiseb dan? F'dan l-artikolu, se ngħaddu minn diversi modi differenti ta 'tbattal tal-kontenut tal-fajl bl-għajnuna ta' xi kmandi utli.

Attenzjoni: Qabel ma nipproċedu biex inħarsu lejn id-diversi modi, innota li minħabba li fil-Linux kollox huwa fajl, dejjem trid tiżgura li l-fajl(i) li qed tbattal mhumiex fajls importanti tal-utent jew tas-sistema. L-ikklerjar tal-kontenut ta' sistema kritika jew fajl ta' konfigurazzjoni jista' jwassal għal żball jew falliment fatali ta' applikazzjoni/sistema.

Ma 'dak imsemmi, hawn taħt huma mezzi ta' ikklerjar tal-kontenut tal-fajl mil-linja tal-kmand.

Importanti: Għall-iskop ta’ dan l-artikolu, użajna l-fajl access.log fl-eżempji li ġejjin.

1. Vojta l-Kontenut tal-Fajl billi Redirezzjoni lejn Null

L-eħfef mod biex tbattal jew vojta kontenut ta' fajl billi tuża shell redirect null (oġġett ineżistenti) għall-fajl kif hawn taħt:

# > access.log

2. Fajl Vojt Bl-użu ta 'Direzzjoni mill-ġdid tal-Kmand veru.

Hawnhekk se nużaw simbolu : huwa kmand shell built-in li huwa essenzjalment ekwivalenti għall-kmand true u jista 'jintuża bħala no-op (l-ebda operazzjoni) .

Metodu ieħor huwa li terġa 'tidderieġi l-output ta' : jew true kmand inkorporat lejn il-fajl hekk:

# : > access.log
OR 
# true > access.log

3. Fajl vojt Bl-użu ta 'utilitajiet cat/cp/dd b'/dev/null

Fil-Linux, l-apparat null huwa bażikament utilizzat għar-rimi ta’ flussi ta’ output mhux mixtieqa ta’ proċess, jew inkella bħala fajl vojt adattat għal flussi ta’ input. Dan normalment isir permezz ta 'mekkaniżmu ta' direzzjoni mill-ġdid.

U l-fajl tal-apparat /dev/null huwa għalhekk fajl speċjali li jikteb (jneħħi) kwalunkwe input mibgħut lilu jew l-output tiegħu huwa l-istess bħal dak ta 'fajl vojt.

Barra minn hekk, tista' tbattal il-kontenut ta' fajl billi terġa' tindirizza l-output ta' /dev/null lejh (fajl) bħala input bl-użu tal-kmand tal-qtates:

# cat /dev/null > access.log

Sussegwentement, se nużaw il-kmand cp biex vojta kontenut tal-fajl kif muri.

# cp /dev/null access.log

Fil-kmand li ġej, jekk tfisser il-fajl tal-input u of tirreferi għall-fajl tal-output.

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

4. Fajl vojt Bl-użu tal-Kmand tal-echo

Hawnhekk, tista 'tuża kmand eku b'sekwenza vojta u tidderieġih lejn il-fajl kif ġej:

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

Nota: Għandek iżżomm f'moħħok li string vojta mhix l-istess bħal null. Spag hija diġà oġġett kemm jista 'jkun vojt filwaqt null sempliċiment ifisser in-nuqqas ta' eżistenza ta 'oġġett.

Għal din ir-raġuni, meta terġa 'tidderieġi l-kmand barra mill-qtates, huwa jistampa linja vojta (sekwenza vojta).

Biex tibgħat output null lill-fajl, uża l-bandiera -n li tgħid lill-echo biex ma joħroġx il-linja ġdida ta 'wara li twassal għal-linja vojta prodotta fil-kmand preċedenti.

# echo -n "" > access.log

5. Fajl vojt billi tuża Kmand truncate

Il-kmand truncate jgħin biex jiċkien jew jestendi d-daqs ta 'fajl għal daqs definit.

Tista' timpjegaha bl-għażla -s li tispeċifika d-daqs tal-fajl. Biex tbattal kontenut ta' fajl, uża daqs ta' 0 (żero) bħal fil-kmand li jmiss:

# truncate -s 0 access.log

Dak hu għalissa, f'dan l-artikolu koprejna metodi multipli ta 'clearing jew tbattil tal-kontenut tal-fajl bl-użu ta' utilitajiet sempliċi tal-linja tal-kmand u mekkaniżmu ta 'ridirezzjoni tal-qoxra.

Dawn probabbilment mhumiex l-uniċi modi prattiċi disponibbli biex tagħmel dan, għalhekk tista 'wkoll tgħidilna dwar kwalunkwe metodu ieħor mhux imsemmi f'din il-gwida permezz tat-taqsima ta' feedback hawn taħt.