Ich hatte ein Problem mit set
nicht in einer Batch-Datei arbeiten; es dauerte eine Weile, das Problem zu destillieren; zuerst dachte ich, es mit Subroutinenaufrufe ...DOS-Batch: SET-Variable und ECHO es innerhalb (...) Block
Das Skript
@echo off
setlocal
set a=aaa
echo a = "%a%"
(
set b=bbb
echo b = "%b%"
)
erzeugt die Ausgabe
a = "aaa"
b = ""
während ich
a = "aaa"
b = "bbb"
erwarten würden, zu tun war, Warum ist das bitte? Ist es ein Fehler in DOS? Vielleicht gibt es etwas über die Befehlsgruppierungssyntax (...)
, die mir nicht bekannt ist.
Danke.
Danke für die knappe Antwort. Wissen Sie zufällig, ob es eine Syntax für die nummerierten Parameter% 1 usw. gibt? Ich habe es versucht! 1 und! 1 !, aber diese funktionieren nicht. (Ich frage dies im Zusammenhang mit einem: Unterprogrammaufruf.) – Rhubbarb
Da sie nicht zwischen Parsing und Ausführung ändern können, wie% a% type Variablen können, kann ich nicht sehen, dass es darauf ankommt. –
Sie haben Recht. Ich hatte andere Probleme mit dem Skript, das dann die gleichen Symptome zeigte. Problem gelöst. Vielen Dank (an alle). – Rhubbarb