Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Verzögerte Umgebungsvariablenerweiterung nur für eine batch-Datei aktivieren

Frage Entwicklung Batch & Shell

Mitglied: AlbertMinrich

AlbertMinrich (Level 2) - Jetzt verbinden

29.01.2009, aktualisiert 14:50 Uhr, 8126 Aufrufe, 9 Kommentare

Hallo,

ich würde gerne die verzögerte Umgebungsvariablenerweiterung (cmd /v:on) nur für eine batch-Datei aktivieren.
Das geht zwar, wenn ich die Eingabeaufforderung mit cmd /v:on starte und dann innerhalb der Eingabeaufforderung die batch ausführe, aber wie mache ich es, wenn ich die batch per Doppelklick oder Taskplaner ausführen will.
Ich weiss, ich könnte es auch per Registrykey generell aktivieren, will ich aber eigentlich nicht, weil ich nicht weiss, ob dann die 100 anderen batch-Dateien noch so funktionieren, wie sie sollen.

Danke
Martin
Mitglied: miniversum
29.01.2009 um 13:24 Uhr
Mal ohne getestet zu haben ob das os geht könntest du es so versuchen:
01.
@echo off 
02.
if "%1" equ "" start "" /B cmd \v:on /c "%0" bla & goto:eof 
03.
 
04.
echo ab hier die restliche bisherige Batch
Bitte warten ..
Mitglied: AlbertMinrich
29.01.2009 um 14:49 Uhr
Geniale Zeile.
Funktioniert einwandfrei.

Danke und Gruss
Martin
Bitte warten ..
Mitglied: bastla
29.01.2009 um 15:06 Uhr
... und falls es ein wenig weniger sein darf :
setlocal enabledelayedexpansion
Grüße
bastla
Bitte warten ..
Mitglied: Biber
29.01.2009 um 15:18 Uhr
... um nicht sogar zu sagen
SetLocal DisableDelayedExpansion
... in den Batchen, die nicht verlässlich mit versehentlich aktivierter verzögerter Variablenerweiterung laufen würden.

Grüße
Biber
Bitte warten ..
Mitglied: AlbertMinrich
29.01.2009 um 17:16 Uhr
Tja, das ist natürlich auch nicht schlecht.

Danke
Bitte warten ..
Mitglied: miniversum
29.01.2009 um 21:51 Uhr
setlocal enabledelayedexpansion
Würde sich das nicht auf alle Batch Dateien auswirken die in dieser Zeit laufen / gestartet werden?
Bitte warten ..
Mitglied: bastla
30.01.2009 um 08:21 Uhr
Hallo miniversum!
Würde sich das nicht auf alle Batch Dateien auswirken die in dieser Zeit laufen / gestartet werden?
Da das nächste "endlocal" die Einstellung wieder aufhebt (und beim Beenden eines Batches ein implilzites "endlocal" erfolgt): Nein; nur ein aus diesem Batch gestarteter weiterer Batch übernimmt diese Einstellung ...

Grüße
bastla
Bitte warten ..
Mitglied: miniversum
30.01.2009 um 16:50 Uhr
Ichhabe den Eingangsbeitrag nochmal gelesen udn festgestellt da sich mich zu sehr auf das "in einer Batch" gestürzt habe. Ich habe es so interpretiert das in einer Batch die Verzögerte auslösung aktiviert wird ohne das es in einer anderen aktiviert wird die gestartet wird während die erste läuft.
War woll fehlinterpretiert von mir.
Bitte warten ..
Mitglied: bastla
30.01.2009 um 16:59 Uhr
Hallo miniversum!

Wenn der zweite Batch nicht durch den ersten Batch (dem mit "setlocal enabledelayedexpanison"), sondern tatsächlich nur während der erste Batch noch läuft, gestartet wird, ist für den zweiten Batch "delayedExpansion" nicht aktiviert ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Dateinamen mit Batch-Datei ändern - Problem (9)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Batch & Shell
gelöst Teile eines Dateinamens ändern mit Batch Datei (4)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Batch & Shell
gelöst Bestimmte Daten aus CSV per Windows BATCH Datei in .txt Format schreiben lassen. (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Windows Netzwerk
gelöst Netzwerkpfad per Batch-Datei (6)

Frage von AveiroCR7 zum Thema Windows Netzwerk ...

Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(5)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
Windows Server
gelöst Exchange HyperV Prozessorlast (19)

Frage von theoberlin zum Thema Windows Server ...

Hardware
16-20 Port POE Switch mit VLAN (19)

Frage von thomasreischer zum Thema Hardware ...

Windows Server
Server mit Netzwerkaussetzern (17)

Frage von SarekHL zum Thema Windows Server ...

LAN, WAN, Wireless
gelöst Batchdatei um einen Proxy einzustellen (14)

Frage von CrystalFlake zum Thema LAN, WAN, Wireless ...