tommhii
Goto Top

Mittels IF Abfrage festlegen welchen Pfad die Variable bekommt

Hallo

ich habe eine Frage , und zwar habe ich 2 Variablen mit unterschiedliche Pfaden .

Ich möchte das zum Beispiel ab Monat Mai die Variable einen anderen Pfad bekommt.

set AEB=c:\Ausgang
IF %month% EQU "05" goto m02
set EEB=c:\Eingang\alt
goto m03
:m02

set EEB=c:\Eingang\neu
:m03
copy %AEB% %EEB%

irgendwie komm ich da nicht weiter, kann mir da jemand helfen.

VG
Tommhi

Content-Key: 371943

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

Printed on: April 25, 2024 at 03:04 o'clock

Member: Pjordorf
Pjordorf Apr 23, 2018 at 10:32:42 (UTC)
Goto Top
Hallo,

Zitat von @tommhii:
IF %month% EQU "05" goto m02
Was ist in %month% enthalten? 5 oder 05 oder Mai oder was? Demzufolge liefert dein Vergleich mit Equal entweder ein Wahr oder Falsch. Evtl ist hier ein GTR oder ein GEQ besser angebracht. Ein IF /? in ein Kommandozeilenfenster hilft oder du schaust mal http://www.robvanderwoude.com/batchfiles.php oder http://www.robvanderwoude.com/battech_booleanlogic.php oder http://www.robvanderwoude.com/clevertricks.php hier nach,

Gruß,
Peter
Member: tommhii
tommhii Apr 23, 2018 at 10:55:26 (UTC)
Goto Top
Hallo Peter,

set month=%date:~3,2% sorry die Zeile hatte ich vergessen.


VG
Tommhi
Member: Pjordorf
Pjordorf Apr 23, 2018 at 11:27:38 (UTC)
Goto Top
Member: Pedant
Pedant Apr 23, 2018 updated at 15:01:27 (UTC)
Goto Top
Hallo Tommhi,

Zitat von @tommhii:
Ich möchte das zum Beispiel ab Monat Mai die Variable einen anderen Pfad bekommt.
das Wort "ab" bedeutet größer oder gleich.
Wie Pjordorf schon schrieb bedeutet das GEQ statt EQU

Zitat von @tommhii:
set month=%date:~3,2% sorry die Zeile hatte ich vergessen.
(Die Code-Tags hast Du auch vergessen.)

Füg mal diese zwei Zeilen dahinter ein:
echo Date: %date%
echo Month: %month%
und poste die Ausgabe.


Wenn's nicht elegant sein muss, kannst Du alle 12 Monate auch per Stringvergleich abhandeln, dann trittst Du nicht in die Oktalfalle.

@echo off

set AEB=C:\Ausgang
set EEB=
set month=%date:~3,2%

IF "%month%"=="01" set EEB=C:\Eingang\alt  
IF "%month%"=="02" set EEB=C:\Eingang\alt  
IF "%month%"=="03" set EEB=C:\Eingang\alt  
IF "%month%"=="04" set EEB=C:\Eingang\alt  
IF "%month%"=="05" set EEB=C:\Eingang\neu  
IF "%month%"=="06" set EEB=C:\Eingang\neu  
IF "%month%"=="07" set EEB=C:\Eingang\neu  
IF "%month%"=="08" set EEB=C:\Eingang\neu  
IF "%month%"=="09" set EEB=C:\Eingang\neu  
IF "%month%"=="10" set EEB=C:\Eingang\neu  
IF "%month%"=="11" set EEB=C:\Eingang\neu  
IF "%month%"=="12" set EEB=C:\Eingang\neu  

IF "%EEB%"=="" goto fehler  

echo Kopiere von %AEB% nach %EEB% ...
copy %AEB% %EEB%
goto ende

:fehler
echo Der Wert "%month%" ist kein gültiger Monatswert.  
pause>nul

:ende


Gruß Frank