Jump to content

UweE

Members
  • Gesamte Inhalte

    3
  • Registriert seit

  • Letzter Besuch

Fortschritt von UweE

Rookie

Rookie (2/14)

  • Erste Antwort
  • Erster eigener Beitrag
  • Eine Woche dabei
  • Einen Monat dabei
  • 1 Jahre dabei

Neueste Abzeichen

0

Reputation in der Community

  1. Hallo, danke für das Beispiel. Ich hab's auch so probiert, allerdings auch ohne Erfolg: ====== @echo off setlocal EnableDelayedExpansion dir *.txt /B >dateiliste for /F %%I in (dateiliste) do ( set G1 = %%~zI set G1 echo %%I !G1! ) ===== Grüße Uwe G1 wird nur bei set ausgegeben, jedoch nicht in der echo-Zeile. :confused:
  2. Hallo, danke für die Antwort und den Tipp mit setlocal. Ich habe das ausprobiert mit folgender Batch: ======= @echo off setlocal EnableDelayedExpansion dir *.txt /B >dateiliste for /F %%i in (dateiliste) do ( set g1 = %%~zi set g1 echo %%i Groesse %g1% Byte ) ====== Die Zeile mit "set g1" zeigt den korrekten Inhalt (1, 2, 3) an, in der echo-Zeile funktioniert es nicht . Ich habe jetzt schon 'ne Weile erfolglos rumprobiert. Mit "if %%~zi == 0 ( ...." funktioniert es aber. Danke und Grüße Uwe
  3. Hallo, ich bin neu hier und hoffe, dass mir bei einem Programmierungsproblem geholfen werden kann. Ich habe mehrere Dateien, die immer wieder mit neuem Inhalt gefüllt werden. Dabei kann es passieren, dass einige Dateien die Dateilänge 0 haben. Diesen Fall muss ich in einer Batch abfangen, um dann entsprechend zu verweigen. Als Beispiel habe ich drei Dateien verwendet: datei1.txt mit 1 Byte Groesse datei2.txt mit 2 Byte Groesse datei3.txt mit 3 Byte Groesse Hier nun mein Versuch: ==================== @echo off dir *.txt /B >dateiliste for /F %%i in (dateiliste) do ( rem Groesse ermitteln set g1=%%~zi echo %%i Groesse %g1% Byte rem weiterer Code zum Verzweigen, wenn Dateigroesse 0 ist ) =================== Ausgabe: datei1.txt Groesse 3 Byte datei2.txt Groesse 3 Byte datei3.txt Groesse 3 Byte Es wird also immer die Größe der letzten Datei ausgegeben. Hat jemand eine Idee, wie man das lösen könnte? Viele Grüße Uwe Lösung inzwischen gefunden. if %%~zi == 0 ( Befehl wenn Datei = 0 byte hat ) ELSE ( Befehl wenn Datei mehr als 0 Byte hat ) Setzen als Variable mit "set g1=%%~zi" funktioniert nicht - scheint ein Bug zu sein!? Uwe
×
×
  • Neu erstellen...