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 syntaxfehler beim übergeben mehrerer variablen

Mitglied: erik87

erik87 (Level 1) - Jetzt verbinden

10.10.2007, aktualisiert 20:29 Uhr, 5297 Aufrufe, 4 Kommentare

Hallo,

ich habe ein kleines problem mit dem syntax beim variablen übergeben in eine andere Batch-datei.

Ich habe eine batch, dat1.bat, welche mehrere variablen an eine weitere, dat2.bat, übergeben soll. Ist es möglich dies über das programm start zu ermöglichen, sodass ich sie nicht in eine datei speichern und dann in der anderen batch wieder auslesen muss?

Bsp.:
::dat1.bat
01.
@echo off
02.
set a=1
03.
set b=2
04.

05.
start dat2.bat %a% %b%
06.
pause>1
Mit nur einer Variable ist es möglich! habe schon kombinationen mit & , ; | () versucht... hat nicht geklappt ;-(

::dat2.bat
01.
@echo off
02.
echo %a%; %b%
03.
pause>2
Und muss ich hier setlocal delayedexpansions anwenden?
Ich möchte eigentlich in der dat2.bat die variable benutzen, verändern und dann wieder zurück an dat1.bat geben.
Ich habe windows vista, aber kein aktuelles update.

Danke schonmal im vorraus.


gruß, erik
Mitglied: Dani
10.10.2007 um 19:56 Uhr
Hallo Erik,
also ich würde es mal so probieren:
dat1.bat:
01.
@echo off
02.
set a=1
03.
set b=2
04.

05.
start dat2.bat %a% %b%
06.
pause>1
Die dat2.bat sieht ein bisschen anders aus:
01.
@echo off
02.
echo %1
03.
echo %2
04.

05.
pause>2
Die übergebene Variablen werden nacheinander mit %1-%n angesprochen. Sprich es gelten die Variablen von Batch A nicht automatisch in Batch B. Ausnahmen sind die Systemvariablen bzw. glob. Variablen.
So, nun hätten wir mal die Variablen im andern Batch zur Verfügung.

Ich möchte eigentlich in der dat2.bat die variable benutzen, verändern und dann wieder
zurück an dat1.bat geben.
Was genau möchtest du denn in die dat2.bat packen. Funktionen gibt es so nicht wie z.B. in C#!


Grüße
Dani
Bitte warten ..
Mitglied: bastla
10.10.2007 um 20:01 Uhr
Hallo erik87!

Eigentlich sollte dafür ein "call" genügen, also:
01.
@echo off
02.
set a=1
03.
set b=2
04.
call dat2.bat
05.
echo Wieder in dat1: %a%; %b%
Wenn Du in "dat2.bat" kein "setlocal" verwendest, kannst Du dort die Variablenwerte auch verändern:
01.
@echo off
02.
echo In dat2: %a%; %b%
03.
set a=0
04.
set b=5
Grüße
bastla
Bitte warten ..
Mitglied: erik87
10.10.2007 um 20:17 Uhr
erstmal recht herzlichen dank,

hmm ja also ich, ist mir nen bischen peinlich.. aber ich hab den fehler gefunden warum es nicht ging mit den variablen übermitteln..

ich hatte

set %b%=2

geschrieben...

hmm also das geht soweit!
ich möchte jetzt, wo ich die variablen übergeben habe, sie durch rechnungen verändern und dann wieder zurückgeben.
Da das programm zu lang wird wollte ich es in einzelne programme aufteilen. So dass ich ein hauptprogramm habe (dat1) welches die eingaben vornimmt und dann weiterführende programme startet. Ihr müsst entschuldigen ich beschäftige mich erst seit 6 wochen mit batch.
und wisst ihr ob es eine math-funktion im batch gibt? ich habe nähmlich festgestellt das batch weitaus übersichtlicher ist wie c++ und somit könnte ich das ganze programm in batch schreiben.
Bitte warten ..
Mitglied: erik87
10.10.2007 um 20:29 Uhr
Ok , recht herzlichen Dank Bastla,
hab es hinbekommen!
man darf die 2. *.bat datei nicht mit exit beenden! Hmm, hätte ich eigentlich auch vorher drauf kommen können! Den rest bekomm ich dann glaub ich selber hin!

Noch mal vielen Dank für die schnellen Antworten!
Damit ist mein problem gelöst!

Gruß, erik
Bitte warten ..
Ähnliche Inhalte
iOS
Kein VPN mehr
gelöst Frage von wollebeeiOS8 Kommentare

Hallo zusammen, ich möchte mit meinem iPhone/iPad (beide neuester iOS Stand) auf mein Heimnetz zugreifen. Hier steht eine Fritz!Box ...

CPU, RAM, Mainboards

DATEV braucht mehr "RUMMS": höherer Takt oder mehr Cores?

gelöst Frage von LochkartenstanzerCPU, RAM, Mainboards10 Kommentare

Moin Kollegen, Ein Kunde hat mich nach einer Workstation für DATEV gefragt. Da ich DATEV selbst noch nie in ...

Windows Server

ADCS lässt sich nicht mehr starten - DB nicht mehr vorhanden

Frage von LHanDuoWindows Server3 Kommentare

Hallo zusammen, vorab, ich bin nicht der Fitteste was PKI etc. angeht, also entschuldigt, falls ich beim Thema Lücken ...

Entwicklung

Geany kompiliert nicht mehr

Frage von NortelEntwicklung4 Kommentare

Hallo zusammen, ich habe nun einige Zeit mit geany kompiliert. Heute habe ich kurzzeitig versucht freepascal neu zu installieren, ...

Neue Wissensbeiträge
Datenschutz

SiSyPHuS Win10: Analyse der Telemetriekomponenten in Windows 10

Tipp von freesolo vor 2 TagenDatenschutz1 Kommentar

Alle die sich detailliert für die Datensammlung interessieren die unter Windows 10 stattfindet, sollten sich folgende Analyse des BSI ...

Sicherheit
Adminrechte dank Intel-Grafikkarte
Information von DerWoWusste vor 2 TagenSicherheit1 Kommentar

ist das Advisory, welches beschreibt, welche Intel HD Graphics Modelle Sicherheitslücken haben, mit denen sich schwache Nutzer zu Admins ...

Internet

EU Urheberrechtsreform: Eingriff in die Internetkultur

Information von Frank vor 3 TagenInternet1 Kommentar

Liebe Besucherin, lieber Besucher, warum erscheint das obere Banner in allen Beiträgen? Aus Protest gegen Teile der geplanten EU-Urheberrechtsreform ...

Windows Server
Windows Backup - FilterManager Event 3
Tipp von NixVerstehen vor 3 TagenWindows Server

Hallo zusammen, ich bin kein gelernter ITler und auch beruflich nicht in dem Feld tätig. Wir setzen in unserem ...

Heiß diskutierte Inhalte
Router & Routing
Lancom-VPN-Client
Frage von FM28880Router & Routing15 Kommentare

Hallo zusammen, ich habe heute zwei Rechner mit einem Lancom VPN-Client eingerichtet. Die VPN-Verbindung wird aufgebaut und steht. Jedoch ...

Hyper-V
Hyper-V Manager startet, jedoch keine VM
Frage von NaleorHyper-V13 Kommentare

Hallo zusammen, auf meinem Windows 10 (Build 1703) Notebook von der Arbeit scheint Hyper-V plötzliche nicht mehr zu funktionieren. ...

Windows Server
Sonntagsfrage: Welchen Sinn seht Ihr noch im Server 2019 Essentials
Frage von ashnodWindows Server12 Kommentare

Guten Morgen, ich habe gestern den Windows Server 2019 Essentials als Trial in einer VM installiert um mir das ...

TK-Netze & Geräte
Telefonanlage Alcatel OXE R11.0.1, CPU c7s2, CPU 7 abgekündigt
Frage von magicteddyTK-Netze & Geräte10 Kommentare

Moin, letzten Monat rief mich ein Mitarbeiter unseres Service Partners an und erzählte mir das wir mit unserer Anlage ...