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

Setlocal wie bekommt man den wert aus einer lokalen Variable in eine globale Variable ??

Frage Entwicklung Batch & Shell

Mitglied: Viper-Berlin

Viper-Berlin (Level 1) - Jetzt verbinden

11.12.2013, aktualisiert 28.01.2014, 1486 Aufrufe, 2 Kommentare, 1 Danke

Hi Leute,

habe folgendes Problem ich möchte mehrere globale Variable Werte aus Proceduren zurückgeben
wie geht das in CMD ????


01.
echo off 
02.
cls 
03.
set /A  "glo_a=1"   & REM *** globale Variable *** 
04.
set /A  "loc_a=8"   & REM *** globale Variable *** 
05.
 
06.
REM  *** HIER GLOBAL VARIABLEN  *** 
07.
echo #GLOBAL# global:%glo_a% local:%loc_a% 
08.
 
09.
setlocal 
10.
    set /A  "loc_a=2"     & REM *** LOCAL VARIABLE ERZEUGEN MIT GLEICHEM NAMEN  ***  
11.
    
12.
    REM *** WIE KANN ICH HIER DER GLOBALEN VARIABLEN glo_a EIN ERGEBNISS ZUWEISEN ?? *** 
13.
    REM *** OHNE EINE NEUE VARIABLE GLO_A ZU ERZEUGEN DIE LOCAL IST *** 
14.
     
15.
    set /A  "glo_a=loc_a + loc_a"     
16.
    echo #SETLOCAL# global:%glo_a% local: %loc_a% 
17.
    call :test01 
18.
endlocal 
19.
 
20.
REM  *** HIER WIEDER GLOBAL  *** 
21.
echo #GLOBAL RAUS AUS SETLOCAL# global:%glo_a% local: %loc_a% 
22.
pause 
23.
goto Bye 
24.
 
25.
REM  *** PROCEDURE MACHE WAS ! z.B RECHNEN ÜBERGEBE WERT AN GLOBALE VARIABLE ? *** 
26.
:test01 
27.
     REM *** HIER SOLL WERT AN GLOBALE VARIABLE glo_a ÜBERGEBEN WERDEN WIE GEHT DAS ? ***      
28.
     set /A  "glo_a=loc_a + loc_a + loc_a" & REM *** ist falsch da ja SET eine neue locale Variable erzeugt wird *** 
29.
     echo #PROC# global:%glo_a% local: %loc_a% >>result.txt 
30.
     echo #PROC# global:%glo_a% local: %loc_a%       
31.
GOTO :EOF 
32.
 
33.
REM ** und Schüssss 
34.
:Bye 
35.
 
36.
 
37.
 
38.
 
Mitglied: Endoro
LÖSUNG 11.12.2013, aktualisiert um 15:22 Uhr
Hey, ein Beispiel:
01.
@ECHO OFF &SETLOCAL 
02.
set /a var1=1 
03.
set /a var2=1 
04.
SETLOCAL 
05.
set /a var1=2 
06.
set /a var2=2 
07.
ENDLOCAL &set /a var1=%var1% 
08.
ECHO var1=%var1% var2=%var2%
lg.
Bitte warten ..
Mitglied: Viper-Berlin
11.12.2013 um 15:55 Uhr
Super danke Endoro

klappt prima !!

ich habs mal auf meine Bedürfnisse angepasst mit mehreren Variablen ist das so richtig ????

Danke Vipy


01.
@ECHO OFF 
02.
CLS 
03.
REM *** GLOBALE VARIABLEN *** 
04.
SET /a "glo1=1" 
05.
SET /a "glo2=2" 
06.
SET /A "gloRET=0" 
07.
REM *** AUCH GLOBALE VARIABLEN ZUR ÜBERPRÜFUNG *** 
08.
SET /a "loc1=1" 
09.
SET /a "loc2=1" 
10.
 
11.
REM *** MAIN PRG *************************************************************** 
12.
     ECHO Ergebnis VORHER  GLOBAL glo1=%glo1% glo2=%glo2% gloRET=%gloRET% loc1:%loc1% loc2=%loc2%  
13.
    call :Rechnen 
14.
    ECHO Ergebnis NACHHER GLOBAL glo1=%glo1% glo2=%glo2% gloRET=%gloRET% loc1:%loc1% loc2=%loc2%  
15.
    pause 
16.
goto bye 
17.
 
18.
:Rechnen 
19.
   SETLOCAL 
20.
      REM *** locALE VARIABLEN *** 
21.
      ECHO Ergebnis  LOCAL glo1=%glo1% glo2=%glo2% gloRET=%gloRET% loc1:%loc1% loc2=%loc2%  
22.
      SET /a "loc1=4" 
23.
      SET /a "loc2=6" 
24.
      SET /a "locRET=loc1*loc2" 
25.
   ENDLOCAL &SET /a "glo1=%loc1%"  &SET /a "glo2=%loc2%"  &SET /a "gloRET=%locRET%" 
26.
GOTO :EOF 
27.
 
28.
REM *** ENDE BANANE.... 
29.
:bye
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst Variable über Wert aussuchen (2)

Frage von CreatorX zum Thema Batch & Shell ...

Batch & Shell
Wert in Registry suchen und in Variable speichern (2)

Frage von J.Troll zum Thema Batch & Shell ...

Batch & Shell
gelöst Variable enthält nur den letzten Wert (4)

Frage von Phill93 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: Variable einen Wert zuweisen (7)

Frage von sascha382 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...