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 ini-Datei mit for Schleife auslesen, Zeilen, die mit Semikolon beginnen, fehlen

Mitglied: torch88

torch88 (Level 1) - Jetzt verbinden

26.07.2009, aktualisiert 18.10.2012, 7082 Aufrufe, 4 Kommentare

Geht um folgendes:

rules.ini-Datei (Command and Conquer-Alarmstufe Rot 1) soll mittels batch-Datei bearbeitet werden.
zB Money=10000 durch Money=20000 ersetzen etc. (wir basteln bei unseren LANs gerne an den einzelnen Parametern des Games herum)
Suchen & ersetzen ist mir zu aufwändig, da teilweise 10x der gleiche Wert ersetzt werden muss und das mit einer Batch einfach userfreundlicher wäre.

OS Win XP Prof SP2

Auszug aus der Batch:

01.
: startkapital 
02.
 
03.
SET /P startkapital="Startkapital: " 
04.
 
05.
SET ersetzen="Money=10000" 
06.
 
07.
For /F "tokens=1,2 delims=" %%A in (rules.ini) Do ( 
08.
Echo %%A>>temp.tmp 
09.
If "%%A"==%ersetzen% ( 
10.
Echo Money=%startkapital%>>temp.tmp)) 
11.
pause 
12.
type temp.tmp | find /v %ersetzen%>rules.ini 
13.
 
14.
DEL temp.tmp 
15.
 
16.
GOTO menu
Nun aber folgendes Problem:

Zeilen die mit einem Strichpunkt beginnen, werden beim bearbeiten gelöscht
(fehlen bereits in der temp.tmp)

Die Zeilen mit den Strichpunkten am Anfang werden jedoch vom Game als Sprungmarken verwendet, sprich müssen vorhanden bleiben...


Bzw. als 2.te Frage:

Gibt es eine Möglichkeit, nach einem kompletten "Zeilenblock" (also mehrere aufeinanderfolgende Zeilen) zu suchen und diese zu ersetzen (meine Lösung ist ja nur für einzelne Zeilen)


Danke schon mal für eure Hilfe!

Gruß

torch
Mitglied: bastla
26.07.2009 um 13:32 Uhr
Auch Dir ein freundliches Hallo, torch88!

Versuch es mit folgender Schreibweise:
For /F "eol=§ tokens=1,2 delims=" %%A in (rules.ini) Do (
Anstelle von "§" kannst Du ein beliebiges in der Datei nicht vorkommendes Zeichen verwenden.

Hintergrund: ";" steht defaultmäßig für "end of line", wodurch der Rest der Zeile igrnoriert wird.

Grüße
bastla
Bitte warten ..
Mitglied: torch88
26.07.2009 um 13:41 Uhr
Perfekt - Danke bastla!

Noch eine Frage, weißt du zufällig wie ich die oben zusätzlich erwähnte Problemstellung lösen kann - also, dass ich nach kompletten "Zeilenblöcken" suchen kann?

Hintergrund:

Mehrere Absätze haben teils gleiche Zeilen, ich müsste diese Zeilen aber nur in einem bestimmten Block austauschen - also entweder genau die Zeile in diesem Block oder den gesamten Block "auswählen" (evtl. auch Zeile nummer xy, wenn das möglich bzw einfacher ist)

Danke!
Bitte warten ..
Mitglied: bastla
26.07.2009 um 14:04 Uhr
Hallo torch88!

Flexibelste Variante:
Je eine Texdatei "Alt.txt" und "Neu.txt" mit dem gesamten Block erstellen und das Ersetzen mit einem VBScript erledigen:
01.
Ini = "D:\rules.ini" 
02.
 
03.
Alt = "D:\Alt.txt" 
04.
Neu = "D:\Neu.txt" 
05.
Set fso = CreateObject("Scripting.FileSystemObject") 
06.
T = fso.OpenTextFile(Ini).ReadAll 
07.
A = fso.OpenTextFile(Alt).ReadAll 
08.
N = fso.OpenTextFile(Neu).ReadAll 
09.
fso.CreateTextFile(Ini, True).Write Replace(T, A, N)
Bei Bedarf ließe sich das Ganze auch in einen Batch "einbetten", dürfte aber wohl nicht nötig sein ...

Grüße
bastla
Bitte warten ..
Mitglied: torch88
28.07.2009, aktualisiert 18.10.2012
habs mit absolutem zeilenbezug hinbekommen, siehe:

https://www.administrator.de/forum/per-echo-command-eine-bestimmte-zeile ...

aber hab keine ahnung wie ich den fehler mit der [ lösen kann...

gruß torch
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
BATCH ini Datei Datei auslesen
gelöst Frage von Juergen42Batch & Shell2 Kommentare

Hallo zusammen, ich möchte eine ini Datei auslesen mit folgenden Aufbau INHALT DER INI ID=30 NAME="test1" PFAD="K:\Kontoauszug\Test1\*.pdf" PFAD_S="K:\Kontoauszug\Test1\Sicherung\" ID=28 ...

Batch & Shell

Variable aus ini Datei auslesen und weiterverwenden

gelöst Frage von n0cturneBatch & Shell17 Kommentare

Hallo zusammen, ich habe eine settings.ini Datei, die unter anderem folgendes beinhaltet: Settings port=1313 Nun möchte ich den Port ...

Installation

Mit Powershell in einer Datei eine Zeile auslesen

gelöst Frage von Bommi1961Installation6 Kommentare

Hallo zusammen, wie bekomme ich es hin, das ich einen Bestimmt wert aus einer Zeil auslesen kann? Ich hab ...

Batch & Shell

Powershell INI Tags auslesen

gelöst Frage von H41mSh1C0RBatch & Shell2 Kommentare

Hi@All, Vorgabe INI. Aus dem File will ich die Namen der Bereiche auslesen und in einen String packen mit ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 2 TagenHumor (lol)3 Kommentare

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Alte Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 3 TagenRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 3 TagenSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 3 TagenWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Netzwerkmanagment im Haus mit Switch, Panel und pfsense
gelöst Frage von CorraggiounoNetzwerkmanagement19 Kommentare

hi zusammen, wir sind gerade dabei das ganze Haus bzw. die einzelnen Zimmer mit netzwerkdosen zu versorgen. Vom Keller ...

Netzwerkgrundlagen
VLAN - Offene Fragen
Frage von KnettenbrechNetzwerkgrundlagen17 Kommentare

Hallo zusammen, ich befasse mich derzeit mit dem Thema VLAN. Hierzu habe ich schon einige Guides gelesen, einschließlich des ...

Google Android
Empfehlung: Android Ortungsapp
gelöst Frage von certifiedit.netGoogle Android13 Kommentare

Guten Morgen, grundsätzlich vorweg, ich wollte mich eben schlau machen, bzgl einer Ortungsapp, welche Androidbasiert einem anderen Androidsmartphone mitteilt, ...

Router & Routing
VPN hinter zweiter Fritzbox nutzen im Nachbarhaus
gelöst Frage von georg2204Router & Routing11 Kommentare

Hallo zusammen, ich blicke hier leider nicht mehr so ganz durch. In Haus 1 steht eine Fritzbox 7390, diese ...