Πώς να διαγράψετε κενά αρχεία (0 byte) στα Windows;

Ορισμένες εφαρμογές δημιουργούν κενά αρχεία 0 byte στους φακέλους δεδομένων τους και αποτυγχάνουν να τα διαγράψουν. Με την πάροδο του χρόνου, αν δείτε πολλά αρχεία μηδενικών byte σε μια ιεραρχία φακέλων, ακολουθούν ορισμένες μέθοδοι για να βρείτε όλα αυτά τα αρχεία 0 byte και να τα διαγράψετε.

Εύρεση και/ή διαγραφή κενών (0 byte) αρχείων στα Windows:

  1. χρησιμοποιώντας το βοηθητικό πρόγραμμα "Find Empty Files-n-Folders".
  2. χρησιμοποιώντας την Αναζήτηση των Windows
  3. χρησιμοποιώντας τη γραμμή εντολών
  4. χρησιμοποιώντας το PowerShell
  5. χρησιμοποιώντας VBScript
  6. χρησιμοποιώντας το DelEmpty.exe

Βρείτε και διαγράψτε αρχεία 0 byte αναδρομικά σε ένα δέντρο φακέλων

Είναι σημαντικό να σημειωθεί ότι η αυθαίρετη διαγραφή αρχείων 0 byte μπορεί να είναι προβληματική μερικές φορές, καθώς ορισμένες εφαρμογές μπορεί να τα χρειάζονται ως σύμβολο κράτησης θέσης ή για κάποιο άλλο λόγο. Εάν είστε βέβαιοι ότι δεν χρειάζεστε αρχεία 0 byte σε μια διαδρομή φακέλου και θέλετε να τα διαγράψετε όλα, ακολουθήστε μία από τις παρακάτω μεθόδους.

Ας ξεκινήσουμε με ένα τακτοποιημένο δωρεάν λογισμικό GUI τρίτου κατασκευαστή και, στη συνέχεια, θα καλύψουμε τις εγγενείς μεθόδους στη συνέχεια.

1. Χρησιμοποιώντας το βοηθητικό πρόγραμμα "Εύρεση κενών αρχείων-n-φάκελων".

Το Find Empty Files-n-Folders είναι ένα εξαιρετικό εργαλείο που μπορεί να βρει και να διαγράψει κενά αρχεία (0-byte) και κενούς φακέλους αναδρομικά κάτω από ένα δέντρο φακέλων.

Κατεβάστε Βρείτε κενά αρχεία-n-φάκελους (600KB εγκατάστασης) από το Ashisoft.com.

Επιλέξτε το φάκελο και κάντε κλικ στο Scan Now.

αφαιρέστε τους άδειους φακέλους στα παράθυρα

Το εργαλείο θα παραθέσει κενά αρχεία και φακέλους σε ξεχωριστές καρτέλες.

Από την καρτέλα Κενά αρχεία, κάντε κλικ Επισήμανση όλων των αρχείων και μετά κάντε κλικ Διαγραφή αρχείων.

αφαιρέστε τα κενά αρχεία 0 byte στα παράθυρα

Ομοίως, να διαγράψτε τα αρχεία των 0 byte στο επιλεγμένο δέντρο φακέλων, κάντε κλικ στο Κενά Αρχεία αυτί.

Το Ashisoft.com έχει άλλα εκπληκτικά εργαλεία που μπορείτε να ελέγξετε!


2. Χρήση της Αναζήτησης των Windows

Η Αναζήτηση των Windows σάς επιτρέπει να παραθέσετε όλα τα αρχεία των 0 byte χρησιμοποιώντας το Μέγεθος: τελεστής ερωτήματος.

Ανοίξτε το φάκελο στον οποίο θέλετε να βρείτε ή να διαγράψετε κενά αρχεία.

Στο πλαίσιο αναζήτησης, πληκτρολογήστε μέγεθος: κενό ή μέγεθος: 0 KB

βρείτε και διαγράψτε αρχεία 0 byte στα Windows

Για να φιλτράρετε τα αποτελέσματα κατά επέκταση αρχείου (π.χ. αρχεία javascript → επέκταση .js ), χρησιμοποιήστε τα παρακάτω Σύνταξη ερωτήματος εκ των προτέρων (AQS):

μέγεθος: κενό ΚΑΙ ext: js
βρείτε και διαγράψτε αρχεία 0 byte στα Windows

3. Χρήση της γραμμής εντολών

Για να παραθέσετε όλα τα αρχεία των 0 byte (0 KB) είναι ένας φάκελος και οι υποφάκελοι αναδρομικά και να εξάγετε τα ονόματα σε ένα αρχείο, χρησιμοποιήστε την ακόλουθη εντολή.

Σημειώστε ότι θα χρειαστεί να εκτελέσετε την εντολή από το φάκελο όπου θέλετε να βρείτε ή να διαγράψετε κενά (0 KB) αρχεία.

για /r %F στο (*) κάντε @if %~zF==0 echo "%F" >>d:\0byte-files.txt

Εναλλακτικά, μπορείτε να συμπεριλάβετε τη διαδρομή φακέλου προορισμού στο Για εντολή ώστε να μην χρειάζεται να αλλάξετε τον κατάλογο στο παράθυρο της κονσόλας. Παράδειγμα:

για /r "d:\websites" %F σε (*) do @if %~zF==0 echo "%F" >>d:\0byte-files.txt

Με αυτόν τον τρόπο, δεν χρειάζεται να μεταβείτε σε αυτόν τον συγκεκριμένο φάκελο στη γραμμή εντολών

Η πλήρης λίστα των εξόδων αρχείων 0 byte εγγράφεται στο αρχείο με το όνομα 0byte-files.txt στο ΡΕ:\ οδηγώ.

βρείτε και διαγράψτε αρχεία 0 byte στα Windows

Για να διαγράψετε τα αρχεία, θα χρησιμοποιήσετε το del εντολή αντί για ηχώ.

για /r %F σε (*.*) κάντε @if %~zF==0 στο "%F"

ή αναφέρετε τη διαδρομή του φακέλου προορισμού στην ίδια την εντολή:

για /r "d:\websites" %F σε (*.*) κάντε @if %~zF==0 στο "%F"

Βρείτε και διαγράψτε αρχεία 0 byte με συγκεκριμένη επέκταση αρχείου

Στα παραπάνω παραδείγματα, μπορείτε ακόμη και να φιλτράρετε κατά επέκταση αρχείου. Για παράδειγμα, για να διαγράψετε 0-byte .κείμενο αρχεία, θα χρησιμοποιούσατε *.κείμενο αντί *.* ή *

για /r %F σε (*.txt) κάντε @if %~zF==0 στο "%F"

ή αναφέροντας τη διαδρομή του φακέλου:

για /r "d:\websites" %F σε (*.txt) κάντε @if %~zF==0 στο "%F"

Αυτό θα διαγράψει όλα τα κενά .κείμενο αρχεία από τον τρέχοντα φάκελο και υποφακέλους ή στο καθορισμένο δέντρο φακέλων αναδρομικά.

Δημιουργήστε ένα αρχείο δέσμης

Εάν θέλετε να δημιουργήσετε ένα ομαδικό αρχείο σε βρείτε και απαριθμήστε αδειάστε αρχεία και εξάγετε τα αποτελέσματα σε ένα αρχείο κειμένου, εδώ είναι ένα:

@echo off. set out="d:\0byte-files.txt" για /r "%~1." %%A σε (*.*) κάντε αν %%~zA == 0 ηχώ "%%~fA" >> %out%

Αποθηκεύστε τα παραπάνω περιεχόμενα ως find-empty-files.bat.

Προς το διαγράφω άδεια αρχεία αντί να εξάγετε τη λίστα των αρχείων, χρησιμοποιήστε αυτό το αρχείο δέσμης:

@echo off. για /r "%~1." %%A σε (*.*) κάντε εάν %%~zA == 0 del "%%~fA"

Προς το εκτελέστε το αρχείο δέσμης σε έναν φάκελο αναδρομικά, θα χρησιμοποιούσατε την ακόλουθη σύνταξη:

d:\scripts\find-empty-files.bat d:\ιστοσελίδες

Τι κάνει η παραπάνω εντολή;

  • για /r %F σε (*) επαναλαμβάνει αρχεία αναδρομικά στον αναφερόμενο φάκελο και υποφακέλους.
  • εάν %~zF==0 ελέγχει εάν το επαναλαμβανόμενο αρχείο είναι αρχείο 0 byte
  • del %%~fA διαγράψτε το αρχείο 0 byte
ΣΧΕΤΙΖΕΤΑΙ ΜΕ:Πώς να βρείτε και να διαγράψετε κενούς φακέλους αυτόματα στα Windows

4. Χρησιμοποιώντας το PowerShell

Εκκινήστε το PowerShell.exe και χρησιμοποιήστε μία από τις ακόλουθες μεθόδους:

Λίστα κενών (0 KB) αρχείων

Προς το λάβετε τη λίστα αρχείων 0-byte κάτω από ένα δέντρο φακέλων, χρησιμοποιήστε αυτήν τη σύνταξη της γραμμής εντολών:

Get-ChildItem -Διαδρομή "D:\websites\test" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | Επιλέξτε -ExpandProperty FullName

Για να εξάγετε τη λίστα σε ένα αρχείο:

Get-ChildItem -Διαδρομή "D:\websites" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | Επιλέξτε -ExpandProperty FullName | Set-Content -Διαδρομή d:\found.txt
βρείτε και διαγράψτε αρχεία 0 byte στα windows - powershell

Για έξοδο της λίστας σε προβολή πλέγματος:

Get-ChildItem -Διαδρομή "D:\websites" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | έξω από το πλέγμα

Για να παραθέσω μόνο α συγκεκριμένο τύπο αρχείου (π.χ., .bmp) :

Get-ChildItem -Διαδρομή "D:\websites" -περιλαμβάνει *.bmp -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | έξω από το πλέγμα

Διαγραφή κενών (0 KB) αρχείων

Προς το διαγράφω όλα τα αρχεία 0-byte κάτω από ένα δέντρο φακέλων, χρησιμοποιήστε αυτήν τη σύνταξη της γραμμής εντολών:

Get-ChildItem -Διαδρομή "D:\websites" -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | αφαίρεση-αντικείμενο

Για να διαγράψετε αρχεία 0 byte που έχουν α συγκεκριμένη επέκταση (π.χ., .bmp)

Get-ChildItem -Διαδρομή "D:\websites" -περιλαμβάνει *.bmp -Recurse -Force | Where-Object { $_.PSIsContainer -eq $false -and $_.Length -eq 0 } | αφαίρεση-αντικείμενο

5. Χρησιμοποιώντας VBScript

διαγράψτε κενά αρχεία 0 byte στα windows - vbscriptΗ ακόλουθη VBScript διαγράφει τα κενά (0 byte) αρχεία σε ένα δέντρο φακέλων αναδρομικά.

Αντιγράψτε τον παρακάτω κώδικα στο Σημειωματάριο και αποθηκεύστε τον ως del-zero-byte-files.vbs

Option Explicit If (WScript. Επιχειρήματα. Μετρήστε <> 1) Στη συνέχεια, WScript. Echo("Χρήση: cscript DeleteEmptyFolders.vbs {path}") WScript. Έξοδος (1) End If Dim strPath: strPath = WScript. Επιχειρήματα (0) Dim fso: Ορισμός fso = CreateObject("Scripting. FileSystemObject") Dim objFolder: Ορισμός objFolder = fso. GetFolder (strPath) Dim sDelList, sDelErr, sFilePath. Dim iCnt. iCnt = 0 DeleteZeroByteFiles objFolder Sub DeleteZeroByteFiles (φάκελος) Εξαφανισμός υποφάκελου, αρχείο On Error Resume Next 'Παράλειψη σφαλμάτων κατά την πρόσβαση σε Junctions, κ.λπ. Για κάθε υποφάκελο Σε φάκελο. Υποφάκελοι DeleteZeroByteFiles Υποφάκελος Επόμενο σε Σφάλμα Μετάβαση 0 Για κάθε αρχείο Στο folder.files Εάν file.size = 0 Στη συνέχεια, sFilePath = αρχείο. Path On Error Συνέχιση Επόμενο fso. DeleteFile file, True If Err.number <> 0 then sDelErr = sDelErr & Err.number & ": " & Err.description & _ vbCrLf & sFilePath & vbCrLf & vbCrLf Άλλο sDelList = sDelList & vbCrLf & sFilePath iCnt = iCnt + 1 Τέλος Εάν είναι ενεργοποιημένο Σφάλμα Μετάβαση 0 Τέλος Εάν Επόμενο. End Sub If sDelList = "" Και sDelErr = "" Τότε WScript. Echo "Δεν βρέθηκαν κενά αρχεία κάτω από το " & _ & strPath & & " tree" WScript. Εγκαταλείπω. End If If sDelList <> "" τότε sDelList = "Διαγράφηκε λίστα κενών αρχείων" & vbCrLf _ & String (38,"-") & vbCrLf & sDelList & vbCrLf & _ vbCrLf & "Σύνολο: Τα αρχεία " & iCnt & " διαγράφηκαν." Εάν sDelErr <> "" τότε sDelErr = "Δεν ήταν δυνατή η διαγραφή αυτών των αρχείων" & _ vbCrLf & String (45,"-") & vbCrLf & sDelErr WScript. Echo sDelList & vbCrLf & vbCrLf & sDelErr

Χρήση

Για να εκτελέσετε το σενάριο σε έναν φάκελο, μπορείτε να χρησιμοποιήσετε το wscript.exe ή το cscript.exe, όπως παρακάτω:

cscript d:\scripts\del-zero-byte-files.vbs "d:\travel έγγραφα" wscript d:\scripts\del-zero-byte-files.vbs "d:\travel έγγραφα"

Το CScript.exe εμφανίζει τις εξόδους στο παράθυρο της κονσόλας. Αυτό σημαίνει ότι θα πρέπει να το εκτελέσετε από ένα παράθυρο γραμμής εντολών για να δείτε την έξοδο.

Το WScript.exe εμφανίζει τις εξόδους στο GUI.

μέσω του μενού Αποστολή σε

Μπορείτε να δημιουργήσετε μια συντόμευση για το σενάριο στο δικό σας φάκελο SendTo και ονομάστε το ως Διαγραφή αρχείων 0 byte. Πρόθεμα wscript.exe στο πεδίο στόχου ιδιοτήτων συντόμευσης.

διαγράψτε κενά αρχεία 0 byte στα windows - vbscript

Στη συνέχεια, κάντε δεξί κλικ σε έναν φάκελο όπου θέλετε να διαγράψετε κενά αρχεία στο δέντρο φακέλων αναδρομικά → κάντε κλικ Στέλνω σε → κλικ Διαγραφή αρχείων 0 byte στο μενού Αποστολή σε.

Θα δείτε τη λίστα των κενών αρχείων που διαγράφηκαν και το σύνολο, καθώς και τα αρχεία που δεν μπορούσαν να διαγραφούν με τους αντίστοιχους κωδικούς σφάλματος που εμφανίζονται.

διαγράψτε κενά αρχεία 0 byte στα windows - vbscript
ΣΧΕΤΙΖΕΤΑΙ ΜΕ:Πώς να αφαιρέσετε αυτόματα τους άδειους φακέλους στα Windows

6. Χρησιμοποιώντας το DelEmpty.exe

DelEmpty.exe είναι ένα εργαλείο κονσόλας από το IntelliAdmin που μπορεί να διαγράψει άδειους καταλόγους αναδρομικά. Αυτό το πρόγραμμα μπορεί επίσης να διαγράψει γρήγορα το κενό Αρχεία 0 byte αναδρομικά.

Ακολουθεί η σύνταξη της γραμμής εντολών για το πρόγραμμα:

Επιλογές DelEmpty.exe [ΔΙΑΔΡΟΜΗ]
Διαφωνία Περιγραφή
-φά Διαγραφή κενών αρχείων (0 byte).
-ρε Διαγραφή κενών καταλόγων
-v Λεπτή λειτουργία
-ντο Λειτουργία επιβεβαίωσης (Εμφανίζει τι διαγράφηκε)
-μικρό Συμπερίληψη υποκαταλόγων (υποφάκελοι διέλευσης)
-μεγάλο Καταγράψτε τι θα διαγραφεί (δεν θα διαγραφεί)
Διαγραφή χωρίς προτροπή (y/n).

Παράδειγμα 1: Προς το λίστα τα άδεια αρχεία κάτω από έναν κατάλογο και τους υποκαταλόγους του, χρησιμοποίησα την ακόλουθη σύνταξη της γραμμής εντολών:

DelEmpty.exe "Νέος φάκελος" -f -c -s -y -l
διαγράψτε τα κενά αρχεία αναδρομικά

Η παραπάνω εντολή εμφανίζει τη λίστα των κενών φακέλων, αλλά δεν θα τους διαγράψει αφού το -μεγάλο (λίστα μόνο) χρησιμοποιείται διακόπτης.

Για ονόματα φακέλων που περιέχουν κενό (α) — π.χ. Mozilla Firefox, φροντίστε να συμπεριλάβετε τα διπλά εισαγωγικά γύρω από τη διαδρομή.

Παράδειγμα 2: Προς το διαγράφω τα κενά αρχεία σε έναν φάκελο και τους υποφακέλους, έτρεξα την ίδια γραμμή εντολών αλλά χωρίς το -μεγάλο διακόπτης:

DelEmpty.exe "Νέος φάκελος" -f -c -s -y
διαγράψτε τα κενά αρχεία αναδρομικά

Γνωρίζετε κάποιο άλλο βοηθητικό πρόγραμμα που μπορεί να διασχίσει υποφακέλους και να διαγράψει κενά αρχεία; Ενημερώστε τα σχόλιά σας.


Ένα μικρό αίτημα: Αν σας άρεσε αυτή η ανάρτηση, κοινοποιήστε την;

Μια "μικροσκοπική" κοινοποίηση από εσάς θα βοηθούσε πολύ σοβαρά στην ανάπτυξη αυτού του ιστολογίου. Μερικές υπέροχες προτάσεις:
  • Καρφιτσώστε το!
  • Μοιραστείτε το στο αγαπημένο σας ιστολόγιο + Facebook, Reddit
  • Tweet το!
Σας ευχαριστώ πολύ λοιπόν για την υποστήριξή σας, αναγνώστη μου. Δεν θα πάρει περισσότερα από 10 δευτερόλεπτα από τον χρόνο σας. Τα κουμπιά κοινής χρήσης βρίσκονται ακριβώς από κάτω. :)

Ezoicαναφέρετε αυτήν τη διαφήμιση