Mõned rakendused loovad oma andmekaustadesse tühje 0-baidiseid faile ega suuda neid kustutada. Kui näete aja jooksul kaustahierarhias palju nullbaidiseid faile, on siin mõned meetodid kõigi nende 0-baidiste failide leidmiseks ja kustutamiseks.
Otsige ja/või kustutage tühjad (0-baidised) failid Windowsis:
- kasutades utiliiti „Leia tühjad failid-n-kaustad”.
- kasutades Windowsi otsingut
- kasutades käsuviipa
- kasutades PowerShelli
- kasutades VBScripti
- kasutades DelEmpty.exe
Otsige ja kustutage kaustapuust rekursiivselt 0-baidiseid faile
Oluline on märkida, et 0-baidiste failide suvaline kustutamine võib mõnikord osutuda problemaatiliseks, kuna mõned rakendused võivad neid kohatäitena või mõnel muul põhjusel vajada. Kui olete kindel, et te ei vaja kaustateel ühtegi 0-baidist faili ja soovite need kõik kustutada, järgige ühte allolevatest meetoditest.
Alustame korraliku kolmanda osapoole vabavaralise GUI tööriistaga ja seejärel käsitleme järgmisena natiivseid meetodeid.
1. Kasutage utiliiti „Leia tühjad failid-n-kaustad”.
Find Empty Files-n-Folders on suurepärane tööriist, mis suudab leida ja kustutada tühje faile (0-baidine) ja tühjad kaustad rekursiivselt kaustapuu all.
Lae alla Otsige üles tühjad failid-n-kaustad (600KB installer) saidilt Ashisoft.com.
Valige kaust ja klõpsake nuppu Scan Now.
Tööriist loetleb tühjad failid ja kaustad eraldi vahekaartidel.
Klõpsake vahekaardil Tühjad failid Märgi kõik failid ja seejärel klõpsake Kustuta failid.
Samamoodi, et kustutada 0-baidised failid klõpsake valitud kaustapuus nuppu Tühjad failid sakk.
Ashisoft.com-il on muid suurepäraseid tööriistu, mida saate kontrollida!
2. Windowsi otsingu kasutamine
Windows Search võimaldab teil loetleda kõik 0-baidised failid, kasutades suurus:
päringu operaator.
Avage kaust, kust soovite tühje faile leida või kustutada.
Tippige otsingukasti suurus: tühi
või suurus: 0 KB
Tulemuste filtreerimiseks faililaiendi järgi (nt javascripti failid → laiend .js
), kasutage järgmist Eelpäringu süntaks (AQS):
suurus: tühi JA väli: js
3. Käsurea kasutamine
Kõigi 0-baidiste (0 KB) failide kausta ja alamkaustade rekursiivseks loetlemiseks ja nimede väljastamiseks faili kasutage järgmist käsku.
Pange tähele, et peate käivitama käsu kaustast, kust soovite tühje (0 KB) faile leida või kustutada.
/r %F jaoks (*) tehke @if %~zF==0 korda "%F" >>d:\0byte-files.txt
Teise võimalusena võite lisada sihtkausta tee kausta jaoks
käsk, et te ei peaks konsooliaknas kataloogi muutma. Näide:
/r "d:\websites" jaoks %F in (*) tee @if %~zF==0 kaja "%F" >>d:\0byte-files.txt
Nii ei pea te käsuviibas sellele konkreetsele kaustale ümber lülituma
Täielik 0-baidiste failide loend kirjutatakse nimega faili 0byte-files.txt
peal D:\
sõita.
Failide kustutamiseks kasutage del
käsu asemel kaja
.
/r %F jaoks (*.*) tehke @if %~zF==0 del "%F"
või mainige käsus endas sihtkausta teed:
/r "d:\websites" jaoks %F in (*.*) tehke @if %~zF==0 del "%F"
Otsige ja kustutage kindla faililaiendiga 0-baidised failid
Ülaltoodud näidetes saate isegi faililaiendi järgi filtreerida. Näiteks 0-baidise kustutamiseks .txt
failid, mida te kasutaksite *.txt
selle asemel *.*
või *
/r %F jaoks (*.txt) tehke @if %~zF==0 del "%F"
või kaustatee mainimisega:
/r "d:\websites" jaoks %F failis (*.txt) tehke @if %~zF==0 del "%F"
See kustutaks kõik tühjad .txt
failid praegusest kaustast ja alamkaustadest või määratud kaustapuusse rekursiivselt.
Looge partiifail
Kui soovite teha pakkfaili leida ja loetleda tühjad failid ja väljastage tulemused tekstifaili, siin on üks:
@kaja väljas. set out="d:\0byte-files.txt" /r jaoks "%~1." %%A in (*.*) tehke, kui %%~zA == 0 kajab "%%~fA" >> %out%
Salvestage ülaltoodud sisu nimega find-empty-files.bat
.
To kustutada tühje faile, selle asemel, et väljastada failide loend, kasutage seda pakkfaili:
@kaja väljas. /r jaoks "%~1." %%A in (*.*) tee, kui %%~zA == 0 del "%%~fA"
To käivitage partiifail rekursiivse kausta vastu, kasutaksite järgmist süntaksit:
d:\scripts\find-empty-files.bat d:\websites
Mida ülaltoodud käsk teeb?
-
/r jaoks %F in (*)
itereerib mainitud kaustas ja alamkaustades olevaid faile rekursiivselt. -
kui %~zF==0
kontrollib, kas itereeritud fail on 0-baidine fail -
del %%~fA
kustutage 0-baidine fail
4. PowerShelli kasutamine
Käivitage PowerShell.exe ja kasutage ühte järgmistest meetoditest.
Loetlege tühjad (0 KB) failid
To hankige nimekiri 0-baidistest failidest kaustapuu all, kasutage järgmist käsurea süntaksit:
Get-ChildItem -Path "D:\websites\test" -Recurse -Force | Kus-Object { $_.PSIsContainer -eq $false -ja $_.Length -eq 0 } | Valige -ExpandProperty FullName
Loendi väljastamiseks faili toimige järgmiselt.
Get-ChildItem -Path "D:\websites" -Recurse -Force | Kus-Object { $_.PSIsContainer -eq $false -ja $_.Length -eq 0 } | Valige -ExpandProperty FullName | Set-Content -Path d:\found.txt
Loendi väljastamiseks ruudustikuvaatesse toimige järgmiselt.
Get-ChildItem -Path "D:\websites" -Recurse -Force | Kus-Object { $_.PSIsContainer -eq $false -ja $_.Length -eq 0 } | ruudustikuväline vaade
Loetleda ainult a konkreetne failitüüp (nt .bmp
) :
Get-ChildItem -Path "D:\websites" -include *.bmp -Recurse -Force | Kus-Object { $_.PSIsContainer -eq $false -ja $_.Length -eq 0 } | ruudustikuväline vaade
Kustutage tühjad (0 KB) failid
To kustutada kõik 0-baidised failid kaustapuu all, kasutage seda käsurea süntaksit:
Get-ChildItem -Path "D:\websites" -Recurse -Force | Kus-Object { $_.PSIsContainer -eq $false -ja $_.Length -eq 0 } | eemalda-üksus
0-baidiste failide kustutamiseks, millel on a konkreetne laiendus (nt .bmp
)
Get-ChildItem -Path "D:\websites" -include *.bmp -Recurse -Force | Kus-Object { $_.PSIsContainer -eq $false -ja $_.Length -eq 0 } | eemalda-üksus
5. VBScripti kasutamine
Järgmine VBScript kustutab tühjad (0-baidised) failid kaustapuust rekursiivselt.
Kopeerige järgmine kood Notepadi ja salvestage see nimega del-zero-byte-files.vbs
Valik Explicit If (WScript. Argumendid. Loendage <> 1) Seejärel WScript. Echo("Kasutus: cscript DeleteEmptyFolders.vbs {path}") WScript. Lõpeta (1) Lõpeta, kui Dim strPath: strPath = WScript. Argumendid (0) Dim fso: Set fso = CreateObject("Skriptimine. FileSystemObject") Dim objFolder: määrake objFolder = fso. GetFolder (strPath) Dim sDelList, sDelErr, sFilePath. Dim iCnt. iCnt = 0 DeleteZeroByteFiles objFolder Sub DeleteZeroByteFiles (kaust) Hämardage alamkausta, faili Vea korral Jätka Järgmine "Jätke Junctionsile juurdepääsul ilmnevad vead vahele. Iga alamkausta jaoks Kaustas. Alamkaustad Kustuta alamkaustZeroByteFiles Next On Error Goto 0 Iga faili jaoks In folder.files Kui file.size = 0, siis sFilePath = fail. Path On Error Resume Next fso. Kustuta faili fail, Tõene Kui Err.number <> 0 Siis sDelErr = sDelErr & Err.number & ": " & Err.description & _ vbCrLf & sFilePath & vbCrLf & vbCrLf Else sDelList = sDelList & vbCrLf & sFilePath iCnt = iCnt + 1 End If On Error Goto 0 End If Edasi. Lõpeta alam, kui sDelList = "" Ja sDelErr = "" Siis WScript. Echo "Puu " & _ & strPath & & " WScripti alt ei leitud tühje faile. Lõpeta. End If If sDelList <> "" siis sDelList = "Tühjade failide loend kustutatud" & vbCrLf _ & String (38,"-") & vbCrLf & sDelList & vbCrLf & _ vbCrLf & "Kokku: " & iCnt & " failid on kustutatud." Kui sDelErr <> "" siis sDelErr = "Neid faile ei saanud kustutada" & _ vbCrLf & String (45,"-") & vbCrLf & sDelErr WScript. Echo sDelList & vbCrLf & vbCrLf & sDelErr
Kasutamine
Skripti käivitamiseks kaustas saate kasutada wscript.exe või cscript.exe, nagu allpool:
cscript d:\scripts\del-zero-byte-files.vbs "d:\reisidokumendid" wscript d:\scripts\del-zero-byte-files.vbs "d:\reisidokumendid"
CScript.exe näitab väljundeid konsooliaknasse. See tähendab, et väljundi nägemiseks peate selle käivitama käsuviiba aknast.
WScript.exe näitab väljundeid GUI-s.
menüü Saada kaudu
Saate luua oma skripti otsetee Saada kausta ja nimetage see kui Kustutage 0-baidised failid. Eesliide wscript.exe
otsetee omaduste sihtväljal.
Seejärel paremklõpsake kaustal, kust soovite tühjad failid kaustapuus rekursiivselt kustutada → klõpsake Saada → klõpsake Kustutage 0-baidised failid menüüs Saada.
Näete kustutatud tühjade failide loendit ja kogusummat ning faile, mida ei saanud vastavate kuvatud veakoodidega kustutada.
6. DelEmpty.exe kasutamine
DelEmpty.exe on IntelliAdmini konsoolitööriist, mis suudab tühje katalooge rekursiivselt kustutada. See programm võib ka tühjad failid kiiresti kustutada 0-baidised failid rekursiivselt.
Järgmine on programmi käsurea süntaks:
DelEmpty.exe VALIKUD [TEE]
Argument | Kirjeldus |
-f | Kustutage tühjad (0-baidised) failid |
-d | Kustutage tühjad kataloogid |
-v | Verbose režiim |
-c | Kinnitusrežiim (näitab, mis kustutati) |
-s | Kaasa alamkataloogid (läbi alamkaustad) |
-l | Loetlege, mis kustutatakse (ei kustuta) |
-y | Kustuta ilma (y/n) viipata |
Näide 1: To nimekirja kataloogi ja selle alamkataloogide all olevad tühjad failid, kasutasin järgmist käsurea süntaksit:
DelEmpty.exe "Uus kaust" -f -c -s -y -l
Ülaltoodud käsk näitab tühjade kaustade loendit, kuid ei kustuta neid alates -l
(ainult loend) lülitit kasutatakse.
Kaustanimede puhul, mis sisaldavad tühikuid – nt Mozilla Firefox
, lisage kindlasti tee ümber jutumärgid.
Näide 2: To kustutada tühjad failid kaustas ja alamkaustades, käivitasin sama käsurea, kuid ilma -l
lüliti:
DelEmpty.exe "Uus kaust" -f -c -s -y
Kas teate mõnda muud utiliiti, mis suudab läbida alamkaustu ja kustutada tühje faile? Andke teada oma kommentaarid.
Üks väike palve: kui teile see postitus meeldis, siis palun jagage seda?
Üks "pisike" jagamine sinult aitaks tõsiselt kaasa selle blogi kasvule. Mõned suurepärased soovitused:- Kinnitage see!
- Jagage seda oma lemmikblogis + Facebookis, Redditis
- Tweet seda!