WinFuture-Forum.de: Batch-Script FOR-Variable - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Batch-Script FOR-Variable

#1 Mitglied ist offline   networker1 

  • Gruppe: Mitglieder
  • Beiträge: 3
  • Beigetreten: 24. Februar 16
  • Reputation: 0

geschrieben 23. Mai 2018 - 13:59

Hallo zusammen,

hat jemand eine Lösung/Hinweis für mein folgendes Problem?
Ich bin schon den ganzen Tag dran :(

Der Script soll auf verschiedene Pfade zugreifen und prüfen ob dieser valide ist.
Für das Beispiel hier habe ich "gleich" als Operator genommen, später werde ich "if not exist" verwenden.

@echo off
set sources[0]="\\sources\folder1\"
set sources[1]="\\sources\folder2\"
set sources[2]="\\sources\folder3\"
set sources[3]="\\sources\folder4\"

for /L %%a in (0,1,3) do (

	call echo %%sources[%%a]%%


	if %%sources[%%a]%% == \\sources\folder2\ (
		echo gefunden
	) else (
		echo nicht gefunden
	)
)


pause


Das Problem ist das die FOR-Variable nicht aufgelöst werden kann.

Hat jemand einen Tip wie ich in der Schleife die Variablen durch das IF bekomme?

Komisch (wie ich finde) ist auch das z.b.
call rename %%sources[%%a]%% %newsource%
geht!?

Vielen Dank schon mal im Voraus.

Gruß networker
0

Anzeige

#2 Mitglied ist offline   MasterP82 

  • Gruppe: aktive Mitglieder
  • Beiträge: 176
  • Beigetreten: 30. Juni 12
  • Reputation: 6

geschrieben 23. Mai 2018 - 16:46

das mit den Klammern [ ] funktioniert nicht bei Batch

EDIT: scheinbar doch, wusste ich nicht.

EDIT2: so funktioniert es erstmal, diese eckigen Klammmern finde ich bei Batch total falsch, baus sie wieder ein wenn du magst

@echo off
setlocal enabledelayedexpansion
set sources0=\\sources\folder1\
set sources1=\\sources\folder2\
set sources2=\\sources\folder3\
set sources3=\\sources\folder4\

for /L %%a in (0,1,3) do (

        echo !sources%%a!


        if exist !sources%%a! (
                echo gefunden
        ) else (
                echo nicht gefunden
        )
)

pause


Dieser Beitrag wurde von MasterP82 bearbeitet: 23. Mai 2018 - 17:24

0

#3 Mitglied ist offline   networker1 

  • Gruppe: Mitglieder
  • Beiträge: 3
  • Beigetreten: 24. Februar 16
  • Reputation: 0

geschrieben 24. Mai 2018 - 08:55

Hallo MasterP82,

vielen Dank für die Lösung ... funktioniert 1a :)

Das mit den eckigen Klammern habe ich entfernt.

Gruß networker
0

Thema verteilen:


Seite 1 von 1

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