Linux'ta Büyük Bir Dosya İçeriğini Boşaltmanın veya Silmenin 5 Yolu


Bazen, bir Linux terminalindeki dosyalarla uğraşırken, bir dosyanın içeriğini herhangi bir Linux komut satırı düzenleyicisini kullanarak açmanıza gerek kalmadan temizlemek isteyebilirsiniz. Bu nasıl başarılabilir?

Bu makalede, bazı yararlı komutların yardımıyla dosya içeriğini boşaltmanın birkaç farklı yolunu inceleyeceğiz.

Dikkat: Çeşitli yollara bakmaya devam etmeden önce, Linux'ta her şey bir dosya olduğundan, boşalttığınız dosyanın/dosyaların önemli kullanıcı veya sistem dosyaları olmadığından her zaman emin olmanız gerektiğini unutmayın. . Kritik bir sistem veya yapılandırma dosyasının içeriğinin temizlenmesi, ölümcül uygulama/sistem hatasına veya arızaya yol açabilir.

Bununla birlikte, aşağıda dosya içeriğini komut satırından temizlemenin yolları verilmiştir.

Önemli: Bu makalenin amacı doğrultusunda aşağıdaki örneklerde access.log dosyasını kullandık.

1. Null'a Yönlendirerek Dosya İçeriğini Boşaltın

Bir dosya içeriğini boşaltmanın veya boşaltmanın en kolay yolu, dosyaya null (var olmayan nesne) kabuk yönlendirmesini kullanarak aşağıdaki gibidir:

> access.log

2. 'Doğru' Komut Yönlendirmesini Kullanarak Dosyayı Boşaltın

Burada sembolünü kullanacağız:, özünde true komutuna eşdeğer olan bir kabuk yerleşik komutudur ve işlemsiz (işlemsiz) olarak kullanılabilir. .

Başka bir yöntem de : veya true yerleşik komutunun çıktısını şu şekilde dosyaya yönlendirmektir:

: > access.log
OR 
true > access.log

3. /dev/null ile cat/cp/dd yardımcı programlarını kullanarak Dosyayı Boşaltın

Linux'ta null aygıtı temel olarak bir işlemin istenmeyen çıktı akışlarını atmak için veya giriş akışları için uygun bir boş dosya olarak kullanılır. Bu normalde bir yönlendirme mekanizmasıyla yapılır.

Ve /dev/null aygıt dosyası bu nedenle kendisine gönderilen tüm girdileri yazan (kaldıran) özel bir dosyadır veya çıktısı boş bir dosyanın çıktısıyla aynıdır.

Ek olarak, cat komutunu kullanarak /dev/null çıktısını girdi olarak dosyaya (dosyaya) yönlendirerek bir dosyanın içeriğini boşaltabilirsiniz:

cat /dev/null > access.log

Daha sonra, gösterildiği gibi bir dosya içeriğini boşaltmak için cp komutunu kullanacağız.

cp /dev/null access.log

Aşağıdaki dd komutunda, if girdi dosyasını, of ise çıktı dosyasını ifade eder.

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

4. echo Komutunu Kullanarak Dosyayı Boşaltın

Burada boş bir dizeyle echo komutunu kullanabilir ve onu aşağıdaki gibi dosyaya yönlendirebilirsiniz:

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

Not: Boş bir dizenin null ile aynı olmadığını aklınızda bulundurmalısınız. Bir dize, boş olabileceği kadar zaten bir nesnedir; null ise yalnızca bir nesnenin var olmadığı anlamına gelir.

Bu nedenle yukarıdaki out of echo komutunu dosyaya yönlendirip cat komutunu kullanarak dosya içeriğini görüntülediğinizde boş bir satır (boş dize) yazdırır.

Dosyaya boş bir çıktı göndermek için, echo'ya önceki komutta üretilen boş satıra giden sondaki yeni satırın çıktısını vermemesini söyleyen -n işaretini kullanın.

echo -n "" > access.log

5. Truncate Komutunu Kullanarak Dosyayı Boşaltın

truncate komutu, bir dosyanın boyutunu belirli bir boyuta kadar küçültmeye veya genişletmeye yardımcı olur.

Dosya boyutunu belirten -s seçeneğiyle kullanabilirsiniz. Bir dosya içeriğini boşaltmak için sonraki komutta olduğu gibi 0 (sıfır) boyutunu kullanın:

truncate -s 0 access.log

Şimdilik bu kadar, bu makalede basit komut satırı yardımcı programlarını ve kabuk yeniden yönlendirme mekanizmalarını kullanarak dosya içeriğini temizlemenin veya boşaltmanın birden fazla yöntemini ele aldık.

Bunlar muhtemelen bunu yapmanın tek pratik yolu değildir; bu nedenle, aşağıdaki geri bildirim bölümü aracılığıyla bize bu kılavuzda belirtilmeyen diğer yöntemler hakkında da bilgi verebilirsiniz.