if mit drei bedingungen

28/05/2009 - 11:55 von Michael Feske | Report spam
Hallo alle zusammen,
iif else konnte ich mittels der hilfe schon erfolgreich einsetzen, was
jedoch wenn eine dritter prüfung dazu kommt? einw eiteres else funktioniert
wohl nicht.
es geht um:
for %%a in (*.jpg) do (
set /a zaehler=!zaehler!+1
rem Operator Beschreibung EQU Gleich NEQ Ungleich LSS Kleiner als LEQ
Kleiner als oder gleich GTR Größer als GEQ Größer als oder gleich
if /i %zaehler% LSS 10 (ren %%a
%prefix%_%Grundnummer%_00!zaehler!_%suffix%.jpg)
if /i %zaehler% LSS 99 (ren %%a
%prefix%_%Grundnummer%_0!zaehler!_%suffix%.jpg)
if /i %zaehler% LSS 100 (ren %%a
%prefix%_%Grundnummer%_!zaehler!_%suffix%.jpg)
)

mit
for %%a in (*.jpg) do (
set /a zaehler=!zaehler!+1
rem Operator Beschreibung EQU Gleich NEQ Ungleich LSS Kleiner als LEQ
Kleiner als oder gleich GTR Größer als GEQ Größer als oder gleich
if /i %zaehler% LSS 10 ((ren %%a
%prefix%_%Grundnummer%_00!zaehler!_%suffix%.jpg)) else (
if /i %zaehler% LSS 99 (ren %%a
%prefix%_%Grundnummer%_0!zaehler!_%suffix%.jpg))
if /i %zaehler% LSS 100 (ren %%a
%prefix%_%Grundnummer%_!zaehler!_%suffix%.jpg)
)

hat es wenigstens für die ersten abfragen funktioniert, wenn auch
fehlermeldungen ausgeworfen wurden das er die dateien nicht findet.

ein AND gibt es ja wohl bei den if´s leider nicht :-( wenn zàhler kleiner 10
und größer 0)

Für einen TIP wàre ich sehr dankbar und probiere es dann auch gerne im
selbststudium.

Gruß
Micha
 

Lesen sie die antworten

#1 Ralf Breuer
28/05/2009 - 13:14 | Warnen spam
Michael Feske schrieb:

Hallo alle zusammen,
iif else konnte ich mittels der hilfe schon erfolgreich einsetzen, was
jedoch wenn eine dritter prüfung dazu kommt? einw eiteres else
funktioniert wohl nicht.
es geht um:
for %%a in (*.jpg) do (
set /a zaehler=!zaehler!+1
rem Operator Beschreibung EQU Gleich NEQ Ungleich LSS Kleiner als LEQ
Kleiner als oder gleich GTR Größer als GEQ Größer als oder gleich
if /i %zaehler% LSS 10 (ren %%a
%prefix%_%Grundnummer%_00!zaehler!_%suffix%.jpg)
if /i %zaehler% LSS 99 (ren %%a
%prefix%_%Grundnummer%_0!zaehler!_%suffix%.jpg)
if /i %zaehler% LSS 100 (ren %%a
%prefix%_%Grundnummer%_!zaehler!_%suffix%.jpg)
)




Bei einem Zàhler kleiner 10 wird das für jede Datei dreimal ausgeführt, ab
100 garnicht mehr. Warum wohl?

mit
for %%a in (*.jpg) do (
set /a zaehler=!zaehler!+1
rem Operator Beschreibung EQU Gleich NEQ Ungleich LSS Kleiner als LEQ
Kleiner als oder gleich GTR Größer als GEQ Größer als oder gleich
if /i %zaehler% LSS 10 ((ren %%a
%prefix%_%Grundnummer%_00!zaehler!_%suffix%.jpg)) else (
if /i %zaehler% LSS 99 (ren %%a
%prefix%_%Grundnummer%_0!zaehler!_%suffix%.jpg))
if /i %zaehler% LSS 100 (ren %%a
%prefix%_%Grundnummer%_!zaehler!_%suffix%.jpg)
)




Bei einem Zàhler kleiner 99 wird das für jede Datei zweimal ausgeführt, ab
100 garnicht mehr. Warum wohl?
Außerdem hast Du wieder % statt ! in der if-Abfrage und das rekursive for
vergessen.

for /R %%a in (*.jpg) do (
set /a zaehler=!zaehler!+1
if /i !zaehler! LSS 10 (
ren %%a %prefix%_%Grundnummer%_00!zaehler!_%suffix%.jpg) else (
if /i !zaehler! LSS 100 (
ren %%a %prefix%_%Grundnummer%_0!zaehler!_%suffix%.jpg) else (
ren %%a %prefix%_%Grundnummer%_!zaehler!_%suffix%.jpg
)
)
)

Warum hast Du schon wieder einen neuen Thread angefangen?

Willst Du nicht mal einen Grundkurs Programmierung besuchen, damit Du einen
Hauch von Gefühl für die Materie lernst?

Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen

Ähnliche fragen