WinFuture-Forum.de: [gelöst] Dateigröße Per Batch Auslesen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

[gelöst] Dateigröße Per Batch Auslesen


#1 Mitglied ist offline   Tiggz 

  • Gruppe: aktive Mitglieder
  • Beiträge: 918
  • Beigetreten: 13. September 06
  • Reputation: 24
  • Geschlecht:unbekannt

geschrieben 02. September 2008 - 19:31

Hallo

Ich möchte die Dateigröße einer bestimmten Datei per Batch auslesen:

- Wenn die Datei größer als 1 MB ist, soll die Ausgabe in MB erfolgen
- Wenn die Datei kleiner als 1 MB ist soll die Ausgabe in KB erfolgen

Kann mir jemand dabei helfen?

Dieser Beitrag wurde von Tiggz bearbeitet: 03. September 2008 - 19:16

0

Anzeige



#2 Mitglied ist offline   Tiggz 

  • Gruppe: aktive Mitglieder
  • Beiträge: 918
  • Beigetreten: 13. September 06
  • Reputation: 24
  • Geschlecht:unbekannt

geschrieben 03. September 2008 - 16:10

Scheint nicht möglich zu sein ;-) .
0

#3 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 03. September 2008 - 18:03

Geht nicht, gibts nicht :smokin:

Ich habe kurz etwas gebastelt:

@echo off
set datei=test.dat

for /f "tokens=1-3" %%i in ('dir %datei% /-C /S ^|find "Datei(en)" ^|find "Bytes"') do set dateigroesse=%%k
if %dateigroesse% GEQ 1000000 goto :MB

:kB
set /A dateigroesse=(%dateigroesse% / 1000)
set unit=kB
goto :Ende

:MB
set /A dateigroesse=(%dateigroesse% / 1000000)
set unit=MB

:Ende
echo %dateigroesse% %unit%


Einfach bei datei den gewünschten Dateinamen eintragen und die Größe wird zurückgegeben.

Grüße,
Stefan
0

#4 Mitglied ist offline   Tiggz 

  • Gruppe: aktive Mitglieder
  • Beiträge: 918
  • Beigetreten: 13. September 06
  • Reputation: 24
  • Geschlecht:unbekannt

geschrieben 03. September 2008 - 18:11

Hallo Diewie

Die Anzeige in KB (wenn kleiner als 1 MB) funktioniert.

Die Datei hat im Moment 1,51 MB, aber es wird nur 1 MB angezeigt.
Ist es möglich das Script so zu erweitern, daß x,xx MB angezeigt wird?

Vielen Dank für Deine Mühe.
0

#5 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 03. September 2008 - 19:08

Natürlich kann man das machen :smokin: Musst nur richtig angeben, was du genau haben willst.

@echo off
set datei=test.dat

for /f "tokens=1-3" %%i in ('dir %datei% /-C /S ^|find "Datei(en)" ^|find "Bytes"') do set dateigroesse=%%k
if %dateigroesse% GEQ 1000000 goto :MB

:kB
set /A dateigroesse=(%dateigroesse% / 1000)
set unit=kB
goto :Ende

:MB
set /A mb=(%dateigroesse% / 1000000)
set /A kb=(%dateigroesse% - %mb% * 1000000)/1000
set dateigroesse=%mb%,%kb:~0,2%
set unit=MB

:Ende
echo %dateigroesse% %unit%


Grüße,
Stefan
0

#6 Mitglied ist offline   Tiggz 

  • Gruppe: aktive Mitglieder
  • Beiträge: 918
  • Beigetreten: 13. September 06
  • Reputation: 24
  • Geschlecht:unbekannt

geschrieben 03. September 2008 - 19:15

Super. Ich bedanke mich vielmals.

Gruß
Tiggz
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0