bve
Goto Top

BATCH - Datei anhand der Größe finden

Mit welchem Befehl kann ich eine Datei anhand der Größe (z.B. 24 KB) finden??

Content-ID: 16513

Url: https://administrator.de/contentid/16513

Ausgedruckt am: 26.11.2024 um 05:11 Uhr

Biber
Biber 22.09.2005 um 13:56:32 Uhr
Goto Top
Beispiel:
>for /R e:\ %i in (*.zip) do @if %~zi GTR 25000 if %~zi LSS 26000 @echo %~i %~zi
e:\Microsoft\grpcopy.zip 25400 

(Suche nach alle Dateien *.zip größer als 25000 und kleiner als 26000 Byte auf Laufwerl E:\)

HTH
Frank / der Biber aus Bremen
bve
bve 22.09.2005 um 14:47:28 Uhr
Goto Top
Klappt nicht. Ich bekomme keine Ausgabe. Ich möchte gerne das alle EXE-Datei mit der Größe von 57355 (Solitär) gefunden werden und die Ausgabe in eine Datei erfolgt, wo die Datei gefunden wurde.
bve
bve 22.09.2005 um 15:01:25 Uhr
Goto Top
War doch alles richtig, hatte einen Fehler gemacht. Wenn gehts und es wird auch ein log erzeugt. Allerdings befinden sich auf dem PC mehrere Dateien mit der gleichen größe, aber es wird nur eine Datei ins Log geschrieben. Bitte helft mir.

for /R c:\ %i in (*.exe) do @if %~zi GTR 57343 if %~zi LSS 57345 @echo %~i %~zi >c:\sol.log
Biber
Biber 22.09.2005 um 15:02:05 Uhr
Goto Top
??? keine Ausgabe
for /R c:\ %i in (sol*.*) do @if %~zi GTR 50000 if %~zi LSS 60000 @echo %~i %~zi
c:\WINDOWS\system32\sol.exe 57344
c:\WINDOWS\system32\dllcache\sol.exe 57344
Biber
Biber 22.09.2005 um 15:04:19 Uhr
Goto Top
Sorry, war über Kreuz.
for /R c:\ %i in (*.exe) do @if %~zi GTR 57343 if %~zi LSS 57345 @echo %~i %~zi >>c:\sol.log
oder
for /R c:\ %i in (*.exe) do @if %~zi EQU 57344 @echo %~i %~zi >>c:\sol.log

[Edit] Bevor mich eine(r) darauf aufmerksam macht: Die Größenangabe in letzten Fall ist ein bisschen albern.
Hab ich ganz allein gemerkt.. *nickt*... Also:
for /R c:\ %i in (*.exe) do @if %~zi EQU 57344 @echo %~i >>c:\sol.log
[/Edit]
bve
bve 22.09.2005 um 15:29:08 Uhr
Goto Top
Klasse, das klappt schonmal gut in der Kommando-Zeile. Kopiere ich den Befehl aber in eine .bat datei kommt folgende Fehlermeldung:

Die folgende Verwendung des Pfadoperators zur Ersetzung eines Batchparameters
ist ungültig: %~i %~zi >>c:\sol.log

Geben Sie CALL /? oder FOR /? ein, um herauszufinden, welche Formate gültig
sind.
"bat" ist syntaktisch an dieser Stelle nicht verarbeitbar.

Man muss in der .bat Datei das % gegen %% ersetzten (siehe Hilfe) und schon klappt es wunderbar. Vielen Dank für deine Hilfe. Wieder ein Admin glücklicher auf der Welt face-wink
Biber
Biber 22.09.2005 um 15:40:37 Uhr
Goto Top
Gern geschehen und Thx für den Tipp mit den doppelten Prozentzeichen face-wink
Falls ich mal eine Frage an die Clients habe, die ich nicht in einer CMD-Zeile formulieren kann, werde ich den %%-Trick verwenden.