Bagaimana Menghapus Fail Kosong (0 bait) di Windows?

Beberapa aplikasi membuat fail 0-bait kosong di folder data mereka dan gagal membersihkannya. Lama kelamaan, jika anda melihat banyak fail sifar byte dalam hierarki folder, berikut adalah beberapa kaedah untuk mencari semua fail 0-bait tersebut dan menghapusnya.

Cari dan hapus fail 0-bait secara berulang dalam pokok folder

Penting untuk diperhatikan bahawa memadam fail 0-bait dengan sewenang-wenangnya kadang-kadang boleh menjadi masalah, kerana beberapa aplikasi mungkin memerlukannya sebagai tempat letak atau untuk sebab lain. Sekiranya anda pasti tidak memerlukan fail 0-byte dalam jalur folder dan mahu memadamkan semuanya, ikuti salah satu kaedah di bawah.

Mari kita mulakan dengan alat GUI perisian percuma pihak ketiga yang rapi, dan kemudian bahas kaedah asli seterusnya.

1. Menggunakan utiliti "Cari Fail Kosong-n-Folder"

Find Empty Files-n-Folders adalah alat yang sangat baik yang dapat mencari dan menghapus fail kosong (0-byte) dan folder kosong secara berulang di bawah folder folder.

Muat turun Cari Fail Kosong-n-Folder (pemasang 600KB) dari Ashisoft.com.

Pilih folder dan klik Imbas Sekarang.

Alat ini akan menyenaraikan fail dan folder kosong dalam tab berasingan.

Dari tab Kosongkan Fail, klik Tandai semua Fail dan kemudian klik Padam Fail .

Begitu juga, untuk menghapus fail 0-bait di pohon folder yang dipilih, klik pada tab Kosongkan Fail .

Ashisoft.com mempunyai alat hebat lain yang boleh anda periksa!


2. Menggunakan Windows Search

Carian Windows membolehkan anda menyenaraikan semua fail 0-bait menggunakan size: operator pertanyaan.

Buka folder di mana anda ingin mencari atau menghapus fail kosong.

Di kotak carian, taipkan size:empty atau size:0 KB

Untuk menapis hasilnya dengan peluasan fail (contohnya, fail javascript → ekstensi .js ), gunakan Sintaks Pertanyaan Muka (AQS) berikut:

 saiz: kosong DAN ext: js 


3. Menggunakan Prompt Perintah

Untuk menyenaraikan semua fail 0-byte (0 KB) adalah folder dan sub-folder secara berulang dan mengeluarkan nama ke fail, gunakan perintah berikut.

$config[ads_text6] not found

Perhatikan bahawa anda perlu menjalankan perintah dari folder di mana anda ingin mencari atau memadam fail kosong (0 KB).

 untuk / r% F di (*) lakukan @if% ~ zF == 0 gema "% F" >> d: \ 0byte-files.txt 

Sebagai pilihan, anda boleh memasukkan jalur folder sasaran dalam perintah for sehingga anda tidak perlu mengubah direktori di tetingkap konsol. Contoh:

 untuk / r "d: \ laman web"% F di (*) lakukan @if% ~ zF == 0 gema "% F" >> d: \ 0byte-files.txt 

Dengan begitu, anda tidak perlu beralih ke folder tertentu di Prompt Perintah

Senarai lengkap output fail 0-byte ditulis ke fail bernama 0byte-files.txt pada pemacu D:\ .

Untuk memadam fail, anda akan menggunakan perintah del dan bukannya echo .

 untuk / r% F di (*. *) lakukan @if% ~ zF == 0 del "% F" 

atau sebutkan jalur folder sasaran dalam arahan itu sendiri:

 untuk / r "d: \ laman web"% F di (*. *) lakukan @if% ~ zF == 0 del "% F" 

Cari dan padam fail 0-bait yang mempunyai sambungan fail tertentu

Dalam contoh di atas, anda bahkan boleh menapis mengikut peluasan fail. Sebagai contoh, untuk menghapus fail .txt 0-byte, anda akan menggunakan *.txt dan bukan *.* Atau *

 untuk / r% F di (* .txt) lakukan @if% ~ zF == 0 del "% F" 

atau dengan menyebut jalan folder:

 untuk / r "d: \ laman web"% F di (* .txt) lakukan @if% ~ zF == 0 del "% F" 

Itu akan menghapus semua fail .txt kosong dari folder dan sub-folder semasa, atau di pohon folder yang ditentukan secara berulang.

Buat fail Batch

Sekiranya anda ingin membuat fail kumpulan untuk mencari dan menyenaraikan fail kosong dan mengeluarkan hasilnya ke fail teks, berikut adalah:

 @echo off set out = "d: \ 0byte-files.txt" untuk / r "% ~ 1." %% A di (*. *) Lakukan jika %% ~ zA == 0 gema "%% ~ fA" >>% keluar% 

Simpan kandungan di atas sebagai find-empty-files.bat .

Untuk memadam fail kosong daripada mengeluarkan senarai fail, gunakan fail kumpulan ini:

 @echo off untuk / r "% ~ 1." %% A di (*. *) Lakukan jika %% ~ zA == 0 del "%% ~ fA" 

Untuk menjalankan fail kumpulan ke folder secara berulang, anda akan menggunakan sintaks berikut:

 d: \ skrip \ cari-kosong-file.bat d: \ laman web 

Apa yang dilakukan oleh perintah di atas?

  • for /r %F in (*) mengulangi fail secara berulang dalam folder dan subfolder yang disebutkan.
  • if %~zF==0 memeriksa sama ada fail lelaran adalah fail 0-bait
  • del %%~fA hapuskan fail 0-bait

BERKAITAN: Cara Mencari dan Menghapus Folder Kosong secara automatik di Windows


4. Menggunakan PowerShell

Mulakan PowerShell.exe dan gunakan salah satu kaedah berikut:

Senaraikan fail kosong (0 KB)

Untuk mendapatkan senarai fail 0-bait di bawah pohon folder, gunakan sintaks baris perintah ini:

 Get-ChildItem -Path "D: \ website \ test" -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -dan $ _. Panjang -eq 0} | Pilih -ExpandProperty FullName 

Untuk mengeluarkan senarai ke fail:

 Get-ChildItem -Path "D: \ laman web" -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -dan $ _. Panjang -eq 0} | Pilih -ExpandProperty FullName | Set-Content -Path d: \ found.txt 

Untuk mengeluarkan senarai ke paparan grid:

 Get-ChildItem -Path "D: \ laman web" -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -dan $ _. Panjang -eq 0} | pandangan luar grid 

Untuk menyenaraikan hanya jenis fail tertentu (mis., .bmp ):

$config[ads_text6] not found
 Get-ChildItem -Path "D: \ laman web" -masuk * .bmp -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -dan $ _. Panjang -eq 0} | pandangan luar grid 

Padamkan fail kosong (0 KB)

Untuk menghapus semua fail 0-bait di bawah pohon folder, gunakan sintaks baris perintah ini:

 Get-ChildItem -Path "D: \ laman web" -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -dan $ _. Panjang -eq 0} | buang barang 

Untuk memadam fail 0-byte yang mempunyai peluasan tertentu (mis., .bmp )

 Get-ChildItem -Path "D: \ laman web" -masuk * .bmp -Recurse -Force | Where-Object {$ _. PSIsContainer -eq $ false -dan $ _. Panjang -eq 0} | buang barang 

4. Menggunakan VBScript

VBScript berikut membersihkan fail kosong (0-bait) dalam pokok folder secara berulang.

Salin kod berikut ke Notepad dan simpan sebagai del-zero-byte-files.vbs

 Pilihan Jelas Jika (WScript.Arguments.Count 1) Kemudian WScript.Echo ("Penggunaan: cscript DeleteEmptyFolders.vbs {path}") WScript.Quit (1) Tamat Jika Dim strPath: strPath = WScript.Arguments (0) Dim fso: Tetapkan fso = CreateObject ("Scripting.FileSystemObject") Dim objFolder: Tetapkan objFolder = fso.GetFolder (strPath) Dim sDelList, sDelErr, sFilePath Dim iCnt iCnt = 0 DeleteZeroByteFiles objFolder Subfile SubdeFile Langkau kesilapan semasa mengakses Junctions, dll. Untuk setiap subfolder Dalam folder. Subfolder DeleteZeroByteFiles subfolder Next On Error Goto 0 For Setiap file In folder.files If file.size = 0 Kemudian sFilePath = file.Path On Error Resume Next fso.DeleteFile file, Betul Jika Err.number 0 Maka sDelErr = sDelErr & Err.number & ":" & Err.description & _ vbCrLf & sFilePath & vbCrLf & vbCrLf Else sDelList = sDelList & vbCrLf & sFilePath iCnt = iFoto Tamat Jika Selanjutnya Akhir Sub Jika sDelList = "" Dan sDelErr = "" Kemudian WScript.Echo "Tiada fail Kosong dijumpai di bawah "& _" "" & strPath & "" "" & "tree" WScript.Quit End If If sDelList "" maka sDelList = "Senarai fail kosong dihapuskan" & vbCrLf _ & String (38, "- ") & vbCrLf & sDelList & vbCrLf & _ vbCrLf &" Total: "& iCnt &" fail dihapuskan. " Sekiranya sDelErr "" maka sDelErr = "Fail ini tidak dapat dihapuskan" & _ vbCrLf & String (45, "-") & vbCrLf & sDelErr WScript.Echo sDelList & vbCrLf & vbCrLf & sDelErr 

Penggunaan

Untuk menjalankan skrip ke folder, anda boleh menggunakan wscript.exe atau cscript.exe, seperti di bawah:

 cscript d: \ scripts \ del-zero-byte-files.vbs "d: \ travel documents" wscript d: \ scripts \ del-zero-byte-files.vbs "d: \ travel documents" 

CScript.exe menunjukkan output ke tetingkap konsol. Ini bermakna anda perlu menjalankannya dari tetingkap Prompt Perintah untuk melihat hasilnya.

WScript.exe menunjukkan keluaran dalam GUI.

melalui menu Hantar Ke

Anda boleh membuat jalan pintas ke skrip di folder SendTo anda, dan menamakannya sebagai Delete 0-byte Files . Awalan wscript.exe di medan sasaran sifat pintasan.

Kemudian, klik kanan pada folder di mana anda ingin menghapus fail kosong di hierarki folder secara berulang → klik Kirim Ke → klik Hapus 0-bait Fail dalam menu Kirim Ke.

Anda akan melihat senarai fail kosong yang dihapus dan jumlahnya, dan fail yang tidak dapat dihapus dengan kod ralat masing-masing dipaparkan.

BERKAITAN: Cara Menghapus Folder Kosong secara automatik di Windows

Itu sahaja!

Artikel Berkaitan