Leere Verzeichnisse per Batch und Desktop.ini markieren
Moin,
ich versuche eine Batchdatei zu erstellen, die in alle leeren gefundenen Verzeichnisse eine Desktop.ini hereinkopiert um das Ordnersymbol zu ändern, sodass dieses Verzeichnis sofort als leer zu erkennen ist.
Soweit bin ich bis jetzt gekommen:
Zunächst wird eine eventuell vorhandene "dassindsie.txt" gelöscht, dann werden alle leeren (versteckte Dateien zählen nicht) Verzeichnisse gefunden und in der Datei "dassindsie.txt" gespeichert, aus der dann in der zweiten "for-schleife" die Ziele für xcopy zeilenweise ausgelesen werden.
Das Script markiert auch fleißig, aber das Problem ist, dass es auch Ordner markiert die zwar keine Dateien aber dafür weitere Verzeichnisse beinhalten.
Was ich mir wünschen würde ist, dass nur die Ordner markiert werden, die weitere leere Ordner oder garnix beinhalten. Sind weitere "gefüllte" Ordner (oder leere Ordner die gefüllte Ordner beinhalten), aber keine Dateien im Ordner vorhanden, soll dieses VZ nicht markiert werden. Tja und genau da komme ich nicht weiter...
Ich bedanke mich schonmal im Vorraus für die Hilfe
mfg
rubisch
ich versuche eine Batchdatei zu erstellen, die in alle leeren gefundenen Verzeichnisse eine Desktop.ini hereinkopiert um das Ordnersymbol zu ändern, sodass dieses Verzeichnis sofort als leer zu erkennen ist.
Soweit bin ich bis jetzt gekommen:
@Echo off
del "c:\test\dassindsie.txt"
for /R C:\Test %%i in (.) do call :chkdir %%i
goto next
:chkdir
dir "%*" | find "0 Datei(en)" >nul:
if %errorlevel% equ 0 echo %*
if %errorlevel% equ 0 echo "%*" >>c:\test\dassindsie.txt
goto :EOF
:next
for /f "delims=^" %%f in (c:\test\dassindsie.txt) do call :kopierdiedannmal %%f
goto nexxt
:kopierdiedannmal
xcopy c:\test\Desktop.ini "%*" /C /H /Y
goto :EOF
:nexxt
attrib +R /D /S
Zunächst wird eine eventuell vorhandene "dassindsie.txt" gelöscht, dann werden alle leeren (versteckte Dateien zählen nicht) Verzeichnisse gefunden und in der Datei "dassindsie.txt" gespeichert, aus der dann in der zweiten "for-schleife" die Ziele für xcopy zeilenweise ausgelesen werden.
Das Script markiert auch fleißig, aber das Problem ist, dass es auch Ordner markiert die zwar keine Dateien aber dafür weitere Verzeichnisse beinhalten.
Was ich mir wünschen würde ist, dass nur die Ordner markiert werden, die weitere leere Ordner oder garnix beinhalten. Sind weitere "gefüllte" Ordner (oder leere Ordner die gefüllte Ordner beinhalten), aber keine Dateien im Ordner vorhanden, soll dieses VZ nicht markiert werden. Tja und genau da komme ich nicht weiter...
Ich bedanke mich schonmal im Vorraus für die Hilfe
mfg
rubisch
Please also mark the comments that contributed to the solution of the article
Content-Key: 149165
Url: https://administrator.de/contentid/149165
Printed on: April 25, 2024 at 10:04 o'clock
2 Comments
Latest comment
Moin,
Ist natürlich sehr suboptimal.
Warum suchst du nicht zu allererst via:
das was du im ersten Schritt brauchst?
Und nimmst diese Ordner dann der Reihe nach auseinander, ob die leer sind oder nicht?
Oder suchst wenigstens nicht nur nach
Gruß
Soweit bin ich bis jetzt gekommen:
@echo off
@echo off
Ist natürlich sehr suboptimal.
Warum suchst du nicht zu allererst via:
dir , /B /AD /S
Und nimmst diese Ordner dann der Reihe nach auseinander, ob die leer sind oder nicht?
Oder suchst wenigstens nicht nur nach
"0 Datei(en)"
sondern auch nach "2 Verzeichnis(se)"
Gruß