Ako odstrániť prázdne súbory (0 bajtov) v systéme Windows?

Niektoré aplikácie vytvárajú prázdne 0-bajtové súbory vo svojich dátových priečinkoch a nedokážu ich vyčistiť. Ak v priebehu času uvidíte v hierarchii priečinkov veľa nulabajtových súborov, tu je niekoľko spôsobov, ako nájsť všetky tieto 0-bajtové súbory a odstrániť ich.

Nájdite a/alebo odstráňte prázdne (0 bajtov) súbory v systéme Windows:

  1. pomocou pomôcky „Nájsť prázdne súbory-n-priečinky“.
  2. pomocou Windows Search
  3. pomocou príkazového riadka
  4. pomocou PowerShell
  5. pomocou VBScript
  6. pomocou DelEmpty.exe

Nájdite a odstráňte 0-bajtové súbory rekurzívne v strome priečinkov

Je dôležité poznamenať, že svojvoľné odstránenie 0-bajtových súborov môže byť niekedy problematické, pretože niektoré aplikácie ich môžu potrebovať ako zástupný symbol alebo z nejakého iného dôvodu. Ak ste si istí, že v ceste k priečinku nepotrebujete žiadne 0-bajtové súbory a chcete ich všetky odstrániť, postupujte podľa jednej z nižšie uvedených metód.

Začnime s úhľadným freewarovým nástrojom GUI tretej strany a potom sa budeme zaoberať natívnymi metódami.

1. Pomocou pomôcky „Nájsť prázdne súbory-n-priečinky“.

Find Empty Files-n-Folders je vynikajúci nástroj, ktorý dokáže nájsť a odstrániť prázdne súbory (0 bajtov) a prázdne priečinky rekurzívne pod stromom priečinkov.

Stiahnuť ▼ Nájdite prázdne súbory-n-priečinky (600 kB inštalačný program) z Ashisoft.com.

Vyberte priečinok a kliknite na tlačidlo Skenovať teraz.

odstrániť prázdne priečinky v systéme Windows

Nástroj zobrazí zoznam prázdnych súborov a priečinkov na samostatných kartách.

Na karte Empty Files kliknite na Označte všetky súbory a potom kliknite Vymazať súbory.

odstrániť 0-bajtové prázdne súbory v systéme Windows

Podobne k vymažte 0-bajtové súbory vo vybranom strome priečinkov kliknite na Prázdne súbory tab.

Ashisoft.com má ďalšie úžasné nástroje, ktoré si môžete vyskúšať!


2. Pomocou Windows Search

Windows Search vám umožňuje zobraziť zoznam všetkých 0-bajtových súborov pomocou veľkosť: operátor dotazu.

Otvorte priečinok, v ktorom chcete nájsť alebo odstrániť prázdne súbory.

Do vyhľadávacieho poľa zadajte veľkosť: prázdny alebo veľkosť: 0 kB

nájsť a odstrániť 0-bajtové súbory v systéme Windows

Ak chcete filtrovať výsledky podľa prípony súboru (napr. súbory javascript → prípona .js ), použite nasledujúce Pokročilá syntax dopytu (AQS):

size: empty AND ext: js
nájsť a odstrániť 0-bajtové súbory v systéme Windows

3. Používanie príkazového riadka

Ak chcete rekurzívne vypísať všetky 0-bajtové (0 kB) súbory priečinka a podpriečinky a vypísať názvy do súboru, použite nasledujúci príkaz.

Upozorňujeme, že budete musieť spustiť príkaz z priečinka, v ktorom chcete nájsť alebo odstrániť prázdne (0 kB) súbory.

pre /r %F v (*) urobte @if %~zF==0 echo "%F" >>d:\0byte-files.txt

Alternatívne môžete zahrnúť cestu cieľového priečinka do pre aby ste nemuseli meniť adresár v okne konzoly. Príklad:

pre /r "d:\websites" %F v (*) urobte @if %~zF==0 echo "%F" >>d:\0byte-files.txt

Týmto spôsobom nemusíte prepínať na konkrétny priečinok v príkazovom riadku

Kompletný zoznam výstupných 0-bajtových súborov sa zapíše do pomenovaného súboru 0byte-files.txt na D:\ riadiť.

nájsť a odstrániť 0-bajtové súbory v systéme Windows

Ak chcete súbory odstrániť, použite del príkaz namiesto ozvena.

pre /r %F v (*.*) urobte @if %~zF==0 del "%F"

alebo uveďte cestu k cieľovému priečinku v samotnom príkaze:

pre /r "d:\websites" %F v (*.*) urobte @if %~zF==0 del "%F"

Nájdite a odstráňte 0-bajtové súbory so špecifickou príponou súboru

Vo vyššie uvedených príkladoch môžete dokonca filtrovať podľa prípony súboru. Napríklad na vymazanie 0-bajtu .TXT súbory, ktoré by ste použili *.TXT namiesto *.* alebo *

pre /r %F v (*.txt) urobte @if %~zF==0 del "%F"

alebo s uvedením cesty k priečinku:

pre /r "d:\websites" %F v (*.txt) urobte @if %~zF==0 del "%F"

To by vymazalo všetko prázdne .TXT súbory z aktuálneho priečinka a podpriečinkov alebo v zadanom strome priečinkov rekurzívne.

Vytvorte dávkový súbor

Ak chcete vytvoriť dávkový súbor do nájsť a uviesť zoznam prázdne súbory a výstup výsledkov do textového súboru, tu je jeden:

@echo vypnuté. set out="d:\0byte-files.txt" pre /r "%~1." %%A v (*.*) urobiť, ak %%~zA == 0 echo "%%~fA" >> %out%

Uložte vyššie uvedený obsah ako find-empty-files.bat.

Komu vymazať prázdne súbory namiesto výstupu zoznamu súborov použite tento dávkový súbor:

@echo vypnuté. pre /r "%~1." %%A v (*.*) urobte, ak %%~zA == 0 del "%%~fA"

Komu spustite dávkový súbor proti priečinku rekurzívne by ste použili nasledujúcu syntax:

d:\scripts\find-empty-files.bat d:\websites

Čo robí vyššie uvedený príkaz?

  • pre /r %F v (*) iteruje súbory rekurzívne v spomínanom priečinku a podpriečinkoch.
  • ak %~zF==0 skontroluje, či je iterovaný súbor 0-bajtový súbor
  • del %%~fA odstráňte 0-bajtový súbor
SÚVISIACE:Ako automaticky nájsť a odstrániť prázdne priečinky v systéme Windows

4. Používanie prostredia PowerShell

Spustite PowerShell.exe a použite jednu z nasledujúcich metód:

Zoznam prázdnych (0 kB) súborov

Komu získať zoznam 0-bajtových súborov pod stromom priečinkov použite túto syntax príkazového riadka:

Get-ChildItem -Cesta "D:\websites\test" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | Vyberte -Rozbaliť Celé meno vlastnosti

Výstup zoznamu do súboru:

Get-ChildItem -Cesta "D:\webové stránky" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | Vyberte -Rozbaliť Celý názov vlastnosti | Set-Content -Path d:\found.txt
nájsť a odstrániť 0-bajtové súbory v systéme Windows - powershell

Výstup zoznamu do zobrazenia mriežky:

Get-ChildItem -Cesta "D:\webové stránky" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | out-gridview

Uviesť iba a konkrétny typ súboru (napr. .bmp) :

Get-ChildItem -Cesta "D:\webové stránky" -include *.bmp -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | out-gridview

Odstráňte prázdne súbory (0 kB).

Komu vymazať všetky 0-bajtové súbory v strome priečinkov použite túto syntax príkazového riadka:

Get-ChildItem -Cesta "D:\webové stránky" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | Odstrániť položku

Ak chcete odstrániť 0-bajtové súbory s a špecifické rozšírenie (napr. .bmp)

Get-ChildItem -Cesta "D:\webové stránky" -include *.bmp -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | Odstrániť položku

5. Použitie VBScript

odstrániť 0-bajtové prázdne súbory v systéme Windows - vbscriptNasledujúci VBScript rekurzívne vymaže prázdne (0-bajtové) súbory v strome priečinkov.

Skopírujte nasledujúci kód do programu Poznámkový blok a uložte ho ako del-zero-byte-files.vbs

Možnosť Explicit If (WScript. Argumenty. Count <> 1) Potom WScript. Echo("Použitie: cscript DeleteEmptyFolders.vbs {cesta}") WScript. Ukončiť (1) End If Dim strPath: strPath = WScript. Argumenty (0) Dim fso: Set fso = CreateObject("Skriptovanie. FileSystemObject") Dim objFolder: Nastavte objFolder = fso. GetFolder (strPath) Stlmiť sDelList, sDelErr, sFilePath. Dim iCnt. iCnt = 0 DeleteZeroByteFiles objFolder Sub DeleteZeroByteFiles (priečinok) Dim podpriečinok, súbor On Error Resume Next 'Preskočiť chyby pri prístupe k Junctions atď. Pre každý podpriečinok V priečinku. SubFolders DeleteZeroByteFiles podpriečinok Ďalej On Error Prejsť na 0 Pre každý súbor V folder.files Ak file.size = 0 Potom sFilePath = súbor. Path On Error Resume Next fso. DeleteFile file, True If Err.number <> 0 Then sDelErr = sDelErr & Err.number & ": " & Err.description & _ vbCrLf & sFilePath & vbCrLf & vbCrLf Else sDelList = sDelList & vbCrLf & sFilePath iCnt = iCnt + 1 End If On Error Prejsť na 0 End If Ďalšie. End Sub If sDelList = "" A sDelErr = "" Potom WScript. Echo "V rámci WScriptu " & _ & strPath & & " sa nenašli žiadne prázdne súbory. Ukončite. End If sDelList <> "" then sDelList = "Zoznam prázdnych odstránených súborov" & vbCrLf _ & String (38,"-") & vbCrLf & sDelList & vbCrLf & _ vbCrLf & "Celkom: " & iCnt & " súbory boli odstránené." Ak sDelErr <> "" potom sDelErr = "Tieto súbory nebolo možné odstrániť" & _ vbCrLf & String (45,"-") & vbCrLf & sDelErr WScript. Echo sDelList & vbCrLf & vbCrLf & sDelErr

Použitie

Ak chcete spustiť skript proti priečinku, môžete použiť wscript.exe alebo cscript.exe, ako je uvedené nižšie:

cscript d:\scripts\del-zero-byte-files.vbs "d:\cestovné dokumenty" wscript d:\scripts\del-zero-byte-files.vbs "d:\cestovné dokumenty"

CScript.exe zobrazuje výstupy do okna konzoly. To znamená, že na zobrazenie výstupu ho budete musieť spustiť z okna príkazového riadka.

WScript.exe zobrazuje výstupy v GUI.

cez ponuku Odoslať kam

Môžete si vytvoriť odkaz na skript vo svojom priečinok SendTo a pomenujte ho ako Odstrániť 0-bajtové súbory. Predpona wscript.exe v cieľovom poli vlastností skratky.

odstrániť 0-bajtové prázdne súbory v systéme Windows - vbscript

Potom kliknite pravým tlačidlom myši na priečinok, z ktorého chcete rekurzívne odstrániť prázdne súbory v strome priečinkov → kliknite Poslať → kliknite Odstrániť 0-bajtové súbory v ponuke Odoslať kam.

Zobrazí sa zoznam prázdnych odstránených súborov a celkový počet a súbory, ktoré nebolo možné odstrániť, so zobrazenými príslušnými chybovými kódmi.

odstrániť 0-bajtové prázdne súbory v systéme Windows - vbscript
SÚVISIACE:Ako automaticky odstrániť prázdne priečinky v systéme Windows

6. Pomocou DelEmpty.exe

DelEmpty.exe je konzolový nástroj od IntelliAdmin, ktorý dokáže rekurzívne mazať prázdne adresáre. Tento program môže tiež rýchlo odstrániť prázdne 0-bajtové súbory rekurzívne.

Nasleduje syntax príkazového riadka pre program:

MOŽNOSTI DelEmpty.exe [CESTA]
Argumentovať Popis
-f Vymažte prázdne (0-bajtové) súbory
-d Vymažte prázdne adresáre
-v Podrobný režim
-c Potvrdiť režim (zobrazí, čo bolo odstránené)
-s Zahrnúť podadresáre (prechádzať podpriečinky)
-l Uveďte, čo by sa odstránilo (nevymaže)
-y Odstrániť bez výzvy (y/n).

Príklad 1: Komu zoznam prázdnych súborov v adresári a jeho podadresároch som použil nasledujúcu syntax príkazového riadku:

DelEmpty.exe "Nový priečinok" -f -c -s -y -l
rekurzívne mazať prázdne súbory

Vyššie uvedený príkaz zobrazí zoznam prázdnych priečinkov, ale neodstráni ich, pretože -l (iba zoznam) sa používa prepínač.

Pre názvy priečinkov obsahujúce medzery – napr. Mozilla Firefox, nezabudnite uviesť dvojité úvodzovky okolo cesty.

Príklad 2: Komu vymazať prázdnych súborov v priečinku a podpriečinkoch som spustil rovnaký príkazový riadok, ale bez -l prepínač:

DelEmpty.exe "Nový priečinok" -f -c -s -y
rekurzívne mazať prázdne súbory

Poznáte nejaký iný nástroj, ktorý dokáže prechádzať podpriečinky a mazať prázdne súbory? Dajte nám vedieť vaše komentáre.


Jedna malá prosba: Ak sa vám tento príspevok páčil, zdieľajte ho?

Jedno "drobné" zdieľanie od vás by vážne pomohlo rastu tohto blogu. Niekoľko skvelých návrhov:
  • Pripnúť!
  • Zdieľajte to na svojom obľúbenom blogu + Facebook, Reddit
  • Tweetujte!
Takže veľmi pekne ďakujem za podporu, môj čitateľ. Nezaberie vám to viac ako 10 sekúnd vášho času. Tlačidlá zdieľania sú nižšie. :)

Ezoicnahlásiť tento inzerát