Variablenproblem set Slashp PNProzentzeichenCVProzentzeichen
Hallo,
es war schwierig hier nach dem zu suchen was ich wiisen wollte.
(Suchbegriffe)
Ich hab nichts gefunden, also --> neuer Tread.
Entschuldigt bitte auch die etwas merkwürdige Überschrift.
Kurz und knapp:
ich möchte Fortlaufende Vriablen festlegen.
set /p PN%CV%=Bitte den Programmnamen eingeben:
Zuerst wird in CV pro Durchgang eine fortlaufend steigende Zahl definiert. Sagen wir mal 1.
Dann wollte ich eigentlich eine Variable mit PN1 definieren die dann den Programmname enthält.
Beim nächsten Durchgang wäre das dann PN2 und ein anderer Programmname dann PN3 ...
Aber das %CV% wird nicht akzeptiert.
Geht das grundsätzlich nicht?
Ich bin ratlos was ich machen könnte.
Ich hab zwar ne überaus umständliche Lösung aber die ist so umständlich, sodass sich mein Programm um etwa 135% Text vergrößern würde.
Wollt ich eigentlich nicht.
Hat da jemand so spät noch eine Idee?
Ich hab wahrscheinlich schon abgeschaltet.
florengray
es war schwierig hier nach dem zu suchen was ich wiisen wollte.
(Suchbegriffe)
Ich hab nichts gefunden, also --> neuer Tread.
Entschuldigt bitte auch die etwas merkwürdige Überschrift.
Kurz und knapp:
ich möchte Fortlaufende Vriablen festlegen.
set /p PN%CV%=Bitte den Programmnamen eingeben:
Zuerst wird in CV pro Durchgang eine fortlaufend steigende Zahl definiert. Sagen wir mal 1.
Dann wollte ich eigentlich eine Variable mit PN1 definieren die dann den Programmname enthält.
Beim nächsten Durchgang wäre das dann PN2 und ein anderer Programmname dann PN3 ...
Aber das %CV% wird nicht akzeptiert.
Geht das grundsätzlich nicht?
Ich bin ratlos was ich machen könnte.
Ich hab zwar ne überaus umständliche Lösung aber die ist so umständlich, sodass sich mein Programm um etwa 135% Text vergrößern würde.
Wollt ich eigentlich nicht.
Hat da jemand so spät noch eine Idee?
Ich hab wahrscheinlich schon abgeschaltet.
florengray
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 75328
Url: https://administrator.de/contentid/75328
Ausgedruckt am: 25.11.2024 um 08:11 Uhr
13 Kommentare
Neuester Kommentar
Moin florengray,
das sollte schon gehen, so wie Du es geplant hast.
[ an den Anführungszeichen hier:{ set /p "PN%i=pn%i? "} liegt es nicht, geht auch ohne.]
Hast Du evtl in der Variable %CV% ein Leerzeichen, also %CV% =" 1" oder "1 "?
Poste doch mal bitte die relevanten Zeilen des Skripts.
Grüße
Biber
das sollte schon gehen, so wie Du es geplant hast.
>for /l %i in (1,1,3) do @set /p "PN%i=pn%i? "
pn1? eins
pn2? zwei
pn3? drei
>set pn
PN1=eins
PN2=zwei
PN3=drei
Hast Du evtl in der Variable %CV% ein Leerzeichen, also %CV% =" 1" oder "1 "?
Poste doch mal bitte die relevanten Zeilen des Skripts.
Grüße
Biber
Moin florengray,
in Deinem Fall brauchst nicht unbedingt die DelayedExpansion.
Aber wenn Du sie verwenden willst:
Aber ich sehe nicht, dass Du den Variablennamen "Wxxx" irgendwo brauchst.
Du könntest ebensogut immer den gleichen Variablenname verwenden.
Grüße
Biber
in Deinem Fall brauchst nicht unbedingt die DelayedExpansion.
Aber wenn Du sie verwenden willst:
@echo off & Setlocal EnableDelayedExpansion
...
for %%i in (irgendwas) do call :subBlock %%i
.....
goto :eof
:SubBlock
xyz
set /p "W%1=gib was für W%1 ein: "
echo Variable W%1 hat den Wert !Wi%1! >>%BSL%Programm.bat
goto :eof
Du könntest ebensogut immer den gleichen Variablenname verwenden.
Grüße
Biber
*lach*
Ich denke nicht, dass nun niemand mehr wegen Deiner Copyright-Bemerkung gepostet hat.
Aber die andere Vermutung, die mit der Überarbeitung bzw. dem "Zu-lange-auf-dieselben-10-Codezeilen-starren", das könnte ein Grund sein.
Denn Deine letzte Plan-Beschreibung sieht von weitem aus wie Sack gequirlte Hühnerbeinchen.
Und aus der Nähe auch nicht besser, mit Verlaub gesagt.
Lass uns doch nach einer Pause oder morgen weitermachen.
Oder wird die Hölle zufrieren, wenn Du das nicht bis 22h fertig hast?
Na also
Biber
Ich denke nicht, dass nun niemand mehr wegen Deiner Copyright-Bemerkung gepostet hat.
Aber die andere Vermutung, die mit der Überarbeitung bzw. dem "Zu-lange-auf-dieselben-10-Codezeilen-starren", das könnte ein Grund sein.
Denn Deine letzte Plan-Beschreibung sieht von weitem aus wie Sack gequirlte Hühnerbeinchen.
Und aus der Nähe auch nicht besser, mit Verlaub gesagt.
Lass uns doch nach einer Pause oder morgen weitermachen.
Oder wird die Hölle zufrieren, wenn Du das nicht bis 22h fertig hast?
Na also
Biber