Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst variablen in for-loop von batch

Mitglied: ketchup

ketchup (Level 1) - Jetzt verbinden

22.10.2007, aktualisiert 17:15 Uhr, 10816 Aufrufe, 1 Kommentar

in einem for-loop sind meine variablen nur tw sichtbar.

01.
@echo off 
02.
setlocal 
03.
set max_version=5 
04.
for /L %%X IN (%max_version%,-1,2) do @( 
05.
echo loop: %%X 
06.
set y=%%X%_foo.txt 
07.
if exist %y% echo %y% gefunden! 
08.
set kk=%%X% 
09.
echo value: %kk% 
10.
echo file: %y% 
11.
set y 
12.
13.
endlocal
ich habe probleme bei meinem for-loop.
der loop soll zb von 5 bis 2 runterzählen und dazwischen einen filenamen zusammenstellen usw.
die ausgabe vom loop-counter (X) funktioniert.
das zusammenstellen des filenamens nur tw.
die ausgabe von kk bzw. Y liefert nur leere werte.

mein script liefert den folgenden output. warum?
wo hab ich meinen knoten im hirn?

beim output von set seh ich allerdings den richtigen wert(e).

thx
jürgen

01.
loop: 5 
02.
value: 
03.
file: 
04.
y=5_foo.txt 
05.
loop: 4 
06.
value: 
07.
file: 
08.
y=4_foo.txt 
09.
loop: 3 
10.
value: 
11.
file: 
12.
y=3_foo.txt 
13.
loop: 2 
14.
value: 
15.
file: 
16.
y=2_foo.txt
Mitglied: bastla
22.10.2007 um 17:15 Uhr
Hallo ketchup!

Versuch es mit "delayedexpansion":
01.
@echo off & setlocal enabledelayedexpansion 
02.
set max_version=5 
03.
for /L %%X IN (%max_version%,-1,2) do @( 
04.
echo loop: %%X 
05.
set y=%%X%_foo.txt 
06.
if exist !y! echo !y! gefunden! 
07.
set kk=%%X% 
08.
echo value: !kk! 
09.
echo file: !y! 
10.
set y 
11.
)
Da Variablen (außer die Schleifenvariable selbst) in "for"-Schleifen nur zu Beginn der Schleife ausgewertet werden, werden in der Schleife vorgenommene Änderungen nur berücksichtigt, wenn eine "verzögerte Variablenauflösung" (delayedexpansion) stattfindet. Dafür notwendig ist es (neben dem "enabledelayedexpansion"), die Variablenschreibweise von %Variable% auf !Variable! zu ändern.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
FOR Loop Variablen ( Batch )
gelöst Frage von clragonBatch & Shell2 Kommentare

Hey Leute. Ich schreib grad an einem script rum und hab folgendes Problem: Die Variable eines FOR loop meines ...

Batch & Shell
Batch Variablen in for-Schleife
gelöst Frage von Dacki1107Batch & Shell2 Kommentare

Hallo Liebe Administratoren Ich kämpfe mit einem kleinen Problemchen und hoffe das Ihr mir helfen könnt. Ich versuche eine ...

Batch & Shell

Batch: Variable Expansion in einer FOR-Schleife

Frage von .SesslBatch & Shell9 Kommentare

Hallo zusammen, leider finde ich dazu nicht viel, "vielleicht" könnt Ihr mir helfen. Da man keine Parameter Variablen der ...

Batch & Shell

FOR Schleife mit LOOP und nachfolgender FOR Schleife

gelöst Frage von miczarBatch & Shell6 Kommentare

Hallo zusammen, ich habe ein Problem mit einem Batchfile. Situation: im Netzwerk ist kein WINS mehr vorhanden und so ...

Neue Wissensbeiträge
Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 2 StundenInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Erkennung und -Abwehr

Ups: Einfaches Nullzeichen hebelte den Anti-Malware-Schutzt in Windows 10 aus

Information von kgborn vor 15 StundenErkennung und -Abwehr

Windows 10 ist das sicherste Windows aller Zeiten, wie Microsoft betont. Insidern ist aber klar, das es da Lücken, ...

Windows 10

Windows 10 on ARM: von Microsoft entfernte Info - Klartext, was nicht geht

Information von kgborn vor 17 StundenWindows 10

Windows 10 on ARM ist ja eine neue Variante, die Microsoft im Verbund mit Geräteherstellern am Markt etablieren will. ...

Microsoft
TV-Tipp: Das Microsoft-Dilemma
Information von kgborn vor 17 StundenMicrosoft10 Kommentare

Aktuell gibt es in Behörden und in Firmen eine fatale Abhängigkeit von Microsoft und dessen Produkten. Planlos agieren die ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 (1709) Tastur und Maus wieder einschalten?
Frage von LochkartenstanzerWindows 1026 Kommentare

Moin, Ich habe von einem Kunden einen Win10-Rechner bekommen, bei dem weder Tastatur noch Maus geht. Die Hardware funktioniert ...

Server
Route-Befehl Unterstützung (unter CMD)
gelöst Frage von FKRR56Server19 Kommentare

Guten Tag , i.M. habe ich Probleme über den CMD-Route-Befehl ein Routing auf einen entfernten Server zuzulassen. Der Server ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall15 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...

Humor (lol)
Was könnte man mit einem Server machen? Idee gesucht
Frage von 2SeitenHumor (lol)15 Kommentare

Hey Zusammen Ich habe einen alten HP G2 Rackserver zu Hause rumliegen. 28GB Ram, 1xAMD Prozi mit etwa 2GHz. ...