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

Variablen aus .ini in Batch einbinden

Frage Entwicklung Batch & Shell

Mitglied: 89485

89485 (Level 1)

22.04.2010 um 07:28 Uhr, 7009 Aufrufe, 3 Kommentare

Guten Morgen,

was ich versuchen wollte, Variablen, die ich in einer .ini Datei zuvor festlege, in ein Batchfile einbinden.

a) geht des überhaupt, wenn ja wie?

b) und wenn ja, wie muss man dann genau die Variablen deklarieren? wie in einem Batch?

Danke schon mal

Grüße

Batchliebhaber
Mitglied: bastla
22.04.2010 um 08:32 Uhr
Hallo Batchliebhaber!

Wenn Du die Variablen in der "ini"-Datei so hinterlegst:
var_Test=123456 
var_Wert=mit Leerzeichen
kannst Du sie ganz direkt mit
for /f "delims=" %%i in (D:\Deine.ini) do set "%%i"
einlesen und setzen.

Im Gegenzug erlaubt ein einfaches
set var_ >D:\Deine.ini
das Speichern aller Variablen, die mit "var_" beginnen.

Grüße
bastla

[Edit] @LotPings & Biber: Tschuldigung, wird - vor allem um die Zeit - kaum wieder vorkommen ... [/Edit]
Bitte warten ..
Mitglied: LotPings
22.04.2010 um 08:39 Uhr
Moin moin Batchliebhaber,

das hängt vom Aufbau deiner Ini-Datei ab. Eini Windows-Ini-Datei hat üblicherweise Sektionsnamen in eckigen Klammern.
Wenn du das selber bestimmst ist es trivial. Wenn die Variablen einen gemeinsamen Prefix haben kann man sie so einfach speichern:
Set Prefix >Deine.Ini
Zum Einlesen der Variablen reicht dieser Einzeiler (in einer Batch sind die %-Zeichen zu verdoppeln):
For /f tokens=1,* delims==" %A in (Deine.Ini) do Set %A=%B
Ungetestet

Gruß
LotPings

Mist, Bastla war ausgeschlafener
Bitte warten ..
Mitglied: Biber
22.04.2010 um 08:44 Uhr
Moin Batchliebhaber,

ergänzend zu bastla [Edit] und LotPinx [/Edit] noch eine andere Demo am CMD-Prompt:
>echo [MeineSection]>>meineini.ini 
 
>echo ; eine Kommentarzeile mit ein paar == (Gleichheitsszeichen) == >>meineini.ini 
 
>echo ; neuevar=wert>>meineini.ini 
 
>echo neuevar=wert>>meineini.ini 
 
>for /f "tokens=1,2* delims==" %i in (meineini.ini) do @if "%j" NEQ "" echo Set "%i=%j" 
 
>type meineini.ini 
[MeineSection] 
; eine Kommentarzeile mit ein paar == (Gleichheitsszeichen) == 
; neuevar=wert 
neuevar=wert 
 
>for /f "tokens=1,2* delims==" %i in (meineini.ini) do @if "%j" NEQ "" echo Set "%i=%j" 
Set "neuevar=wert"
Ich schreibe ein paar Zeilen in eine Textdatei namens "meineini.ini" und versuche mich an den gewohnten Aufbau einer Win[dows].ini-Datei anzulehnen.

  • Alle Zeilen, die mit einem ";" (Semikolon) beginnen werden praktischerweise ignoriert (Standardeinstellung der FOR-Anweisung).
  • [Sectionnamen] werden ignoriert, da sie keine 2 Token enthalten, wenn "delims sind Gleichheitszeichen" angesagt sind.
  • Leerzeilen werden ohnehin ignoriert.

Grüße
Biber
[Edit] Mist, bastla und LotPings hatten schon einen Koffein-Vorsprung.[/Edit]]
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Registry per Batch abfragen und INI Einträge hinzufügen bzw. ändern (18)

Frage von kampen zum Thema Batch & Shell ...

Batch & Shell
gelöst Grosses Variablen Problem ( Batch) (30)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
gelöst FOR Loop Variablen ( Batch ) (2)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
gelöst Laufwerksbezeichnung (label) in Batch als Variable nutzen (21)

Frage von tobias.mock zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Tools

Zeit für Energiesparmodus, Bildschirmabschaltung etc. schnell anpassen

Anleitung von hannsgmaulwurf zum Thema Windows Tools ...

Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(4)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Heiß diskutierte Inhalte
Netzwerke
DynDNS Dienst mit Mikrotik Router OS 6.4 (12)

Frage von Mopskiller zum Thema Netzwerke ...

Switche und Hubs
gelöst Cisco 2960x Stacking über mehrere Etagen (12)

Frage von b3scher zum Thema Switche und Hubs ...