Linux-da uly faýl mazmunyny boşatmagyň ýa-da pozmagyň 5 usuly


Kämahal, Linux terminalyndaky faýllar bilen iş salyşýan wagtyňyz, haýsydyr bir Linux buýruk setiri redaktoryny ulanmazdan bir faýlyň mazmunyny hökman açyp bilersiňiz. Muny nädip gazanyp bolar? Bu makalada käbir peýdaly buýruklaryň kömegi bilen faýl mazmunyny boşatmagyň birnäçe dürli usullaryny öwreneris.

Üns beriň: Dürli usullara göz aýlamazdan ozal üns beriň, Linux-da hemme zat bir faýl bolany üçin, boşadýan faýllaryňyzyň möhüm ulanyjy ýa-da ulgam faýly däldigine hemişe göz ýetiriň. Kritiki ulgamyň ýa-da konfigurasiýa faýlynyň mazmunyny arassalamak, amaly programma/ulgam ýalňyşlygyna ýa-da şowsuzlyga sebäp bolup biler.

Bu aýdylanda, aşakda buýruk setirinden faýl mazmunyny arassalamak serişdeleri bar.

Üns beriň: Bu makalanyň maksady üçin aşakdaky mysallarda access.log faýlyny ulandyk.

1. Null-a gönükdirmek arkaly boş faýl mazmuny

Aşakdaky ýaly faýla mazmuny gönükdirmek null (ýok obýekt) ulanyp, faýl mazmunyny boşatmagyň ýa-da boşatmagyň iň aňsat usuly:

# > access.log

2. Hakyky buýruk gönükdirmesini ulanyp boş faýl

Bu ýerde : nyşanyny ulanarys, manysy true buýrugyna deňdir we ony açmak (operasiýa ýok) hökmünde ulanyp bolar. .

Başga bir usul, : ýa-da true gurlan buýrugyň çykyşyny faýla gönükdirmek:

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

3. Pişik/cp/dd kömekçi enjamlaryny/dev/null bilen boş faýl

Linux-da, null enjamy, esasan, prosesiň islenmeýän çykyş akymlaryny taşlamak ýa-da giriş akymlary üçin amatly boş faýl hökmünde ulanylýar. Bu adatça gönükdirme mehanizmi arkaly amala aşyrylýar.

Şonuň üçin /dev/null enjam faýly, özüne iberilen islendik girişi ýa-da çykyşy boş faýlyňky ýaly ýazýan (aýyrýan) ýörite faýl.

Mundan başga-da, bir faýlyň mazmunyny /dev/null çykyşyny pişik buýrugy arkaly giriş hökmünde gönükdirip bilersiňiz:

# cat /dev/null > access.log

Ondan soň, görkezilişi ýaly faýl mazmunyny boşatmak üçin cp buýrugyny ulanarys.

# cp /dev/null access.log

Aşakdaky buýrukda, if giriş faýlyny aňladýar we çykyş faýlyny aňladýar.

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

4. Eho buýrugyny ulanyp boş faýl

Bu ýerde, echo buýrugyny boş setir bilen ulanyp, faýla aşakdaky ýaly gönükdirip bilersiňiz:

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

Bellik: Boş setiriň null ýaly däldigini ýadyňyzdan çykarmaly dälsiňiz. Setir eýýäm bir obýekt bolup biler, sebäbi boş bolup biler, null bolsa bir obýektiň ýoklugyny aňladýar.

Şol sebäpli, pişik buýrugyndan başga ýere ugrukdyranyňyzda, boş çyzyk (boş setir) çap edilýär.

Faýla null çykyş ibermek üçin, öňki buýrukda öndürilen boş setire alyp barýan yzky täze setiri çykarmazlygy aýdýan echo -n baýdagyny ulanyň.

# echo -n "" > access.log

5. Kesilen buýrugy ulanyp boş faýl

Kesmek buýrugy faýlyň ululygyny kesgitlenen ululyga gysmaga ýa-da giňeltmäge kömek edýär.

Faýlyň ululygyny kesgitleýän -s opsiýasy bilen ulanyp bilersiňiz. Faýl mazmunyny boşatmak üçin indiki buýrukdaky ýaly 0 (nol) ululykda ulanyň:

# truncate -s 0 access.log

Häzirlikçe, bu makalada ýönekeý buýruk setiri we gabyk gönükdirme mehanizmini ulanyp, faýl mazmunyny arassalamagyň ýa-da boşatmagyň birnäçe usuly barada durup geçdik.

Bular muny amala aşyrmagyň ýeke-täk amaly usullary däl bolsa gerek, şonuň üçin aşakdaky seslenme bölüminiň üsti bilen bu gollanmada agzalmadyk beýleki usullar barada hem aýdyp bilersiňiz.