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

Kommunikation innerhalb CMD bzw Batchfiles durch Variablen

Frage Entwicklung Batch & Shell

Mitglied: moiko89

moiko89 (Level 1) - Jetzt verbinden

18.05.2012 um 07:57 Uhr, 3153 Aufrufe, 9 Kommentare

Moin Moin

Gibt es eine bekannte Möglichkeit, Werte bzw Variablen innerhalb CMD auszutauschen?
Also ich habe zwei Batchfiles die Variablen austauschen sollen, also sowas wie die Globale Variable
aber die scheint es ja in der Batch nicht zu geben.
Habe das momentan mit einer Datei gelöst, scheint mir aber eine ehr unelegante Art zu sein

Hoffe ihr könnt mir helfen.

Schöne Grüße
Mitglied: refLye
18.05.2012 um 08:26 Uhr
Verstehe ich das richtig? Du hast eine Variable 1 mit einem bestimmten Wert. Und du willst diesen Wert aus Variable 1 in Variable zwei übernehmen?

So:
01.
@echo off 
02.
set VARIABLE1=Test 
03.
set VARIABLE2=%VARIABLE1% 
04.
set VARIABLE1=
?
Bitte warten ..
Mitglied: moiko89
18.05.2012 um 09:26 Uhr
Nicht ganz, variable2 befindet sich in einer 2. Batch.
Sprich ich möcht den wert von variable1 aus der einen batch in variable2 in die andere batch übergeben.
Bitte warten ..
Mitglied: Skyemugen
18.05.2012 um 10:19 Uhr
Aloha,

wo ist das Problem?

call batch2.bat %variable1% zusammen mit set variable2=%1 oder wie oder was?

Das Thema gibt's doch nun wirlich aberdrölftrillionen Mal im Internet zu begutachten ...

greetz André
Bitte warten ..
Mitglied: moiko89
18.05.2012 um 11:16 Uhr
Jaaahaaa soweit war ich auch allerdings öffnet sich dann die batch nach dem call im gleichen fenster, aber ich möchte ja 2 fenster bzw zwei batch.
Bitte warten ..
Mitglied: bastla
18.05.2012 um 12:11 Uhr
Hallo moiko89!

Na dann eben:
01.
set "Variable=whatever" 
02.
start "Fenster2" "D:\Dein zweiter Batch.cmd"
- wobei Du im Zweifelsfall, wie von Skye schon angedeutet, den Wert der Variablen auch einfach als Parameter beim Aufruf des zweiten Batches übergeben könntest ...

Grüße
bastla
Bitte warten ..
Mitglied: moiko89
18.05.2012 um 12:45 Uhr
Der Ansatz ist schonmal super, danke dafür! Aber nochnicht ganz so wie ich das haben möchte.

Hier mal die batch1.bat
01.
@echo off 
02.
set /a var1=1 
03.
:start 
04.
start "fenster2" "D:\batchtest\batch2.bat" 
05.
ping -n 5 localhost > nul 
06.
set /a var1=%var1% + 1 
07.
cls 
08.
goto start
Kurze Erklärung:
Die erste Batch setzt eine Variable bzw. zählt immer 1 zur Var1 hinzu, startet dannach die 2. Batch und übergibt den wert der Variable,
diesen Vorgang wiederholt sie alle 5 Sekunden. (Nachteil: Es wird immer ein neues Fenster geöffnet)

Dann mal zur 2. Batch
01.
@echo off 
02.
set /a var1 
03.
echo %var1% 
04.
ping -n 5 localhost > nul 
05.
exit
Erklärung:
Diese Batch sollte eigl. den Wert der var1 nur aktualisieren, da das aber nur durch erneutes Aufrufen funktioniert,
schließt sie sich nach 5 Sekunden.
Dann wird sie eben durch die erste Batch wieder aufgerufen und zeigt den neuen Wert der Var1 an.
Alles ja schön und gut, aber geht das nicht geschmeidiger?
Bitte warten ..
Mitglied: bastla
18.05.2012 um 14:10 Uhr
Hallo moiko89!
geht das nicht geschmeidiger?
Vielleicht wenn Du einmal den Sinn der ganzen Aktion erklären würdest ...

Grüße
bastla
Bitte warten ..
Mitglied: pieh-ejdsch
19.05.2012, aktualisiert um 15:02 Uhr
Moin moiko89,

das habe ich doch im Tutorial: Batch Variablen Begrenzung und Veränderung der LaufzeitUmgebung schön mit Beispielen beschrieben.

Gruß Phil
Bitte warten ..
Mitglied: pieh-ejdsch
21.05.2012 um 00:27 Uhr
moin,

was eventuell zum Aufteilen auf zwei batches Instanzen geht ist:
01.
@echo off 
02.
::echo on 
03.
if "%~1" equ "" start "" cmd /c %0 Steuern 
04.
findstr /ric:"^ *:%1 *$" %0 1>nul &&goto :%1 
05.
if "%~1" neq "" goto :eof 
06.
 
07.
:run 
08.
title Batch eins Zeiger 
09.
set /a x+=2 
10.
waitfor /si run 1>nul  
11.
waitfor check /t 4 2>&1 >nul ||exit /b 
12.
echo %x% 
13.
goto :run 
14.
 
15.
:Steuern 
16.
title Batch zwei Steuern 
17.
waitfor /si check 1>nul 
18.
waitfor run /t 3 2>nul 1>&2 ||exit /b 
19.
ping localhost -n 3 1>nul 
20.
echo neu 
21.
goto :Steuern
Kann aber genausowenig Variablenwerte hervorkramen. Über eine Datei ist es doch am sinnvollsten bei zwei gleichzeitigen Instanzen die Variablen "auzutauschen".

Gruß Phil
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

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

Ähnliche Inhalte
Batch & Shell
CMD Verschlüsslung ( Batch ) (9)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
Schleife mit todos CMD

Frage von TommyDerWalker zum Thema Batch & Shell ...

Batch & Shell
gelöst Cmd Befehle in Powershell GUI aufrufen (5)

Frage von Markus2016 zum Thema Batch & Shell ...

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

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 ...

Erkennung und -Abwehr
Spam mit eigener Domain (12)

Frage von NoobOne zum Thema Erkennung und -Abwehr ...