peneltiiq
Goto Top

Batch Variablen zusammensetzen

Guten Abend,

[GELÖßT!]

Ich habe folgendes Problem:
Ich habe eine batchdatei geschrieben, die eine Art Feld hat (ähnlich wie ein 2-dimensionales Array in Java).
Dabei habe ich die x-Koordinaten durchnummeriert und die y-Koordinaten als Buchstabenfolge dargestellt. (a1, a2, a3, b1, b2, b3, ...)
Diese Koordinaten haben einen bestimmten Wert (z.B. "hallo"). Nun erhalte ich von anderer Stelle die einzelnen Punkte (a, b, c, ... und 1, 2, 3, ...). Wenn ich diese nun zusammenfüge, bekomme ich die Koordinate wieder als Text. Nun gelingt es mir einfach nicht, aus dieser zusammengefügten Koordinate, den zuvor festgelegten Inhalt ("hallo") ausgegeben zu bekommen.

Ich schreibe zum einfacheren Verständnis noch einmal meinen Code:

set d4=hallo
set x=4
set y=d
set coord=%y%%x% <--- Nun enthält die Variable "coord" den text "d4"
echo %coord% <--- Dass nun "d4" und nicht "hallo" ausgegeben wird, ist völlig klar.
Jedoch suche ich eine Möglichkeit, um genau dies zu erreichen (fals es überhaupt möglich ist)

Content-Key: 201316

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

Ausgedruckt am: 29.03.2024 um 09:03 Uhr

Mitglied: bastla
bastla 05.02.2013, aktualisiert am 06.02.2013 um 15:42:53 Uhr
Goto Top
Hallo PeneltiiQ und willkommen im Forum!

Du könntest das zB so versuchen:
@echo off & setlocal
set "d4=hallo"  
set "x=4"  
set "y=d"  
set "coord=%y%%x%"  
for /f "tokens=1* delims==" %%i in ('set %coord%') do echo %%j  
oder einfacher mit dieser Zeile 6:
call echo %%%coord%%%
Die lässt sich auch so verwenden:
call set "Wert=%%%coord%%%"  
echo %Wert%
Grüße
bastla
Mitglied: PeneltiiQ
PeneltiiQ 06.02.2013 um 15:40:13 Uhr
Goto Top
Hallo bastla,
vielen Dank für die schnelle Rückmeldung.
hat funktioniert. (:
Ging schneller und besser als ich dachte, dankeschön.