Bazı uygulamalar, veri klasörlerinde boş 0 baytlık dosyalar oluşturur ve bunları temizleyemez. Zamanla, bir klasör hiyerarşisinde çok sayıda sıfır baytlık dosya görürseniz, tüm bu 0 baytlık dosyaları bulup silmek için bazı yöntemler aşağıda verilmiştir.
Windows'ta boş (0 bayt) dosyaları bulun ve/veya silin:
- “Boş Dosyaları-n-Klasörleri Bul” yardımcı programını kullanarak
- Windows Arama'yı kullanma
- Komut İstemi'ni kullanma
- PowerShell'i kullanma
- VBScript kullanarak
- DelEmpty.exe'yi kullanma
Bir klasör ağacında yinelemeli olarak 0 baytlık dosyaları bulun ve silin
0 baytlık dosyaların keyfi olarak silinmesinin bazen sorunlu olabileceğini unutmamak önemlidir, çünkü bazı uygulamalar bunlara yer tutucu olarak veya başka bir nedenle ihtiyaç duyabilir. Bir klasör yolunda 0 baytlık dosyalara ihtiyacınız olmadığından eminseniz ve hepsini silmek istiyorsanız, aşağıdaki yöntemlerden birini izleyin.
Temiz bir 3. taraf ücretsiz GUI aracıyla başlayalım ve ardından yerel yöntemleri ele alalım.
1. “Boş Dosya-n-Klasör Bul” yardımcı programını kullanma
Find Empty Files-n-Folders, boş dosyaları (0 bayt) bulup silebilen mükemmel bir araçtır ve boş klasörler özyinelemeli olarak bir klasör ağacının altında.
İndirmek Boş Dosyalar-n-Klasörleri Bul (600KB yükleyici) Ashisoft.com'dan.
Klasörü seçin ve Şimdi Tara'ya tıklayın.
Araç, boş dosya ve klasörleri ayrı sekmelerde listeleyecektir.
Boş Dosyalar sekmesinden Tüm Dosyaları İşaretle ve ardından tıklayın Dosyaları sil.
Benzer şekilde 0 baytlık dosyaları silin seçilen klasör ağacında Boş Dosyalar sekme.
Ashisoft.com'da kontrol edebileceğiniz başka harika araçlar var!
2. Windows Arama'yı Kullanma
Windows Arama, aşağıdakileri kullanarak tüm 0 baytlık dosyaları listelemenize olanak tanır: boyut:
sorgu operatörü.
Boş dosyaları bulmak veya silmek istediğiniz klasörü açın.
Arama kutusuna şunu yazın boyut: boş
veya boyut: 0 KB
Sonuçları bir dosya uzantısına göre filtrelemek için (ör. javascript dosyaları → uzantı .js
), aşağıdakileri kullanın Gelişmiş Sorgu Sözdizimi (AQS):
boyut: boş VE dahili: js
3. Komut İstemini Kullanma
Tüm 0 bayt (0 KB) dosyaları bir klasör ve alt klasörleri yinelemeli olarak listelemek ve adlarını bir dosyaya çıkarmak için aşağıdaki komutu kullanın.
Boş (0 KB) dosyaları bulmak veya silmek istediğiniz klasörden komutu çalıştırmanız gerekeceğini unutmayın.
(*) içindeki /r %F için @if %~zF==0 echo "%F" >>d:\0byte-files.txt yapın
Alternatif olarak, hedef klasör yolunu için
komutu, böylece konsol penceresindeki dizini değiştirmenize gerek kalmaz. Örnek:
/r "d:\websites" için (*) içindeki %F @if %~zF==0 echo "%F" >>d:\0byte-files.txt
Bu şekilde, Komut İstemi'nde o belirli klasöre geçmeniz gerekmez.
0 baytlık dosyaların çıktısının tam listesi adlı dosyaya yazılır. 0byte-files.txt
üzerinde D:\
sürmek.
Dosyaları silmek için del
yerine komut Eko
.
(*.*) içindeki /r %F için @if %~zF==0 del "%F" yapın
veya komutun kendisinde hedef klasör yolundan bahsedin:
/r "d:\websites" için (*.*) içindeki %F @if %~zF==0 del "%F" yapın
Belirli bir dosya uzantısına sahip 0 baytlık dosyaları bulun ve silin
Yukarıdaki örneklerde dosya uzantısına göre bile filtreleme yapabilirsiniz. Örneğin, 0 baytı silmek için .txt
kullanacağın dosyalar *.txt
onun yerine *.*
veya *
(*.txt) içindeki /r %F için @if %~zF==0 del "%F" yapın
veya klasör yolundan bahsederek:
/r "d:\websites" için (*.txt) içindeki %F için @if %~zF==0 del "%F" yapın
Bu tüm boşları siler .txt
geçerli klasör ve alt klasörlerdeki veya belirtilen klasör ağacındaki dosyaları yinelemeli olarak.
Toplu iş dosyası oluşturun
Toplu iş dosyası yapmak isterseniz bul ve listele boş dosyalar ve sonuçları bir metin dosyasına aktarın, işte bir:
@Eko kapalı. set out="d:\0byte-files.txt" /r için "%~1." %%A in (*.*) yap if %%~zA == 0 echo "%%~fA" >> %out%
Yukarıdaki içeriği farklı kaydet find-empty-files.bat
.
İle silmek dosyaların listesini çıkarmak yerine boş dosyalar için bu toplu iş dosyasını kullanın:
@Eko kapalı. /r için "%~1." (*.*) içindeki %%A, %%~zA == 0 del "%%~fA" ise yapın
İle toplu iş dosyasını çalıştırın bir klasöre karşı yinelemeli olarak, aşağıdaki sözdizimini kullanırsınız:
d:\scripts\find-empty-files.bat d:\web siteleri
Yukarıdaki komut ne işe yarar?
-
(*) içinde /r %F için
belirtilen klasör ve alt klasörlerdeki dosyaları yinelemeli olarak yineler. -
%~zF==0 ise
yinelenen dosyanın 0 baytlık bir dosya olup olmadığını kontrol eder -
del %%~fA
0 baytlık dosyayı silin
4. PowerShell'i kullanma
PowerShell.exe'yi başlatın ve aşağıdaki yöntemlerden birini kullanın:
Boş (0 KB) dosyaları listele
İle listeyi al 0 baytlık dosyaların bir klasör ağacının altında olması için bu komut satırı sözdizimini kullanın:
Get-ChildItem -Path "D:\websites\test" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -ve $_.Length -eq 0 } | -ExpandProperty FullName öğesini seçin
Listeyi bir dosyaya çıkarmak için:
Get-ChildItem -Path "D:\websites" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -ve $_.Length -eq 0 } | -ExpandProperty FullName'i seçin | Set-Content -Path d:\found.txt
Listeyi ızgara görünümüne çıkarmak için:
Get-ChildItem -Path "D:\websites" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -ve $_.Length -eq 0 } | ızgara dışı
Sadece bir listelemek için belirli dosya türü (Örneğin., .bmp
) :
Get-ChildItem -Path "D:\websites" -include *.bmp -Recurse -Force | Where-Object { $_.PSIsContainer -eq $yanlış -ve $_.Length -eq 0 } | ızgara dışı
Boş (0 KB) dosyaları sil
İle silmek bir klasör ağacının altındaki tüm 0 baytlık dosyalar için bu komut satırı sözdizimini kullanın:
Get-ChildItem -Path "D:\websites" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $yanlış -ve $_.Length -eq 0 } | öğeyi kaldırmak
0 baytlık dosyaları silmek için belirli uzantı (Örneğin., .bmp
)
Get-ChildItem -Path "D:\websites" -include *.bmp -Recurse -Force | Where-Object { $_.PSIsContainer -eq $yanlış -ve $_.Length -eq 0 } | öğeyi kaldırmak
5. VBScript'i kullanma
Aşağıdaki VBScript, bir klasör ağacındaki boş (0 bayt) dosyaları yinelemeli olarak temizler.
Aşağıdaki kodu Not Defteri'ne kopyalayın ve farklı kaydedin. del-zero-byte-files.vbs
Seçenek Açık If (WScript. Argümanlar. Say <> 1) Sonra WScript. Echo("Kullanım: cscript DeleteEmptyFolders.vbs {path}") WScript. Çık (1) End If Dim strPath: strPath = WScript. Argümanlar (0) Dim fso: Set fso = CreateObject("Komut Dosyası. DosyaSistemNesnesi") ObjFolder'ı karart: objFolder = fso olarak ayarlayın. GetFolder (strPath) sDelList, sDelErr, sFilePath'i karartın. iCnt'yi karart. iCnt = 0 DeleteZeroByteFiles objFolder Sub DeleteZeroByteFiles (klasör) Dim alt klasörü, file On Error Resume Next 'Kavşaklara erişirken hataları atla, vb. Her alt klasör için Klasörde. Alt Klasörler DeleteZeroByteFiles alt klasörü Sonraki Hatada Git 0 Her dosya için folder.files içinde file.size = 0 O zaman sFilePath = dosya. Yol Hatası Devam Et Sonraki fso. DeleteFile dosyası, True ise Err.number <> 0 Sonra sDelErr = sDelErr & Err.number & ": " & Err.description & _ vbCrLf & sFilePath & vbCrLf & vbCrLf Else sDelList = sDelList & vbCrLf & sFilePath iCnt = iCnt + 1 End If On Hata Git 0 End If Sonraki. End Sub Eğer sDelList = "" Ve sDelErr = "" ise WScript. Echo " & _ & strPath & & " ağacı" WScript'i altında "Boş dosya bulunamadı. Çıkış yapmak. End If sDelList <> "" ise sDelList = "Silinen boş dosyaların listesi" & vbCrLf _ & String (38,"-") & vbCrLf & sDelList & vbCrLf & _ vbCrLf & "Toplam: " & iCnt & " dosyaları silindi." sDelErr <> "" ise sDelErr = "Bu dosyalar silinemedi" & _ vbCrLf & String (45,"-") & vbCrLf & sDelErr WScript. Yankı sDelList & vbCrLf & vbCrLf & sDelErr
kullanım
Komut dosyasını bir klasöre karşı çalıştırmak için aşağıdaki gibi wscript.exe veya cscript.exe'yi kullanabilirsiniz:
cscript d:\scripts\del-zero-byte-files.vbs "d:\seyahat belgeleri" wscript d:\scripts\del-zero-byte-files.vbs "d:\seyahat belgeleri"
CScript.exe, çıktıları konsol penceresine gösterir. Bu, çıktıyı görmek için Komut İstemi penceresinden çalıştırmanız gerekeceği anlamına gelir.
WScript.exe, GUI'deki çıktıları gösterir.
Gönder menüsü aracılığıyla
Dosyanızda komut dosyası için bir kısayol oluşturabilirsiniz. Klasöre Gönder ve olarak adlandırın 0 baytlık Dosyaları Sil. Önek wscript.exe
kısayol özellikleri hedef alanında.
Ardından, klasör ağacındaki boş dosyaları tekrar tekrar silmek istediğiniz klasöre sağ tıklayın → tıklayın Gönderildi → tıklayın 0 baytlık Dosyaları Sil Gönder menüsünde.
Silinen boş dosyaların listesini ve toplamını ve görüntülenen ilgili hata kodlarıyla silinemeyen dosyaları göreceksiniz.
6. DelEmpty.exe'yi kullanma
DelEmpty.exe boş dizinleri özyinelemeli olarak silebilen bir IntelliAdmin konsol aracıdır. Bu program ayrıca boş dosyaları hızlıca silebilir. 0 baytlık dosyalar tekrarlı.
Programın komut satırı sözdizimi aşağıdadır:
DelEmpty.exe SEÇENEKLERİ [YOL]
Argüman | Açıklama |
-F | Boş (0 bayt) dosyaları silin |
-D | Boş dizinleri sil |
-v | ayrıntılı mod |
-C | Modu onayla (Nelerin silindiğini gösterir) |
-s | Alt dizinleri dahil et (geçiş alt klasörleri) |
-l | Nelerin silineceğini listeleyin (silinmeyecek) |
-y | (y/n) istemi olmadan sil |
Örnek 1: İle liste bir dizinin ve alt dizinlerinin altındaki boş dosyalar için aşağıdaki komut satırı sözdizimini kullandım:
DelEmpty.exe "Yeni Klasör" -f -c -s -y -l
Yukarıdaki komut, boş klasörlerin listesini gösterir, ancak bunları silmeyecektir. -l
(sadece liste) anahtarı kullanılır.
Boşluk(lar) içeren klasör adları için - ör. Mozilla Firefox
, yolun etrafına çift tırnak eklediğinizden emin olun.
Örnek 2: İle silmek bir klasördeki ve alt klasörlerdeki boş dosyalar, aynı komut satırını çalıştırdım ama -l
değiştirmek:
DelEmpty.exe "Yeni Klasör" -f -c -s -y
Alt klasörleri dolaşabilen ve boş dosyaları silebilen başka bir yardımcı program biliyor musunuz? Yorumlarınızı öğrenelim.
Küçük bir rica: Bu gönderiyi beğendiyseniz, lütfen paylaşır mısınız?
Sizden bir "küçük" paylaşım, bu blogun büyümesine ciddi anlamda çok yardımcı olacaktır. Bazı harika öneriler:- İğnele!
- En sevdiğiniz blog + Facebook, Reddit'te paylaşın
- Cıvılda!