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

Einen Eintrag in einer .cfg hinzufügen (mit fortlaufender Nummer), aber wie?

Frage Entwicklung Batch & Shell

Mitglied: bladis

bladis (Level 1) - Jetzt verbinden

08.01.2010 um 14:30 Uhr, 3908 Aufrufe, 3 Kommentare, 1 Danke

Hallo zusammen,

ersteinmal vielen Dank für dieses klasse Forum. Es hat mir schon oft in Sachen Batch schreiben geholfen ohne selbst Fragen stellen zu müssen.
Allerdings konnte ich die Lösung für mein jetziges Problem nicht finden.

Es geht um eine Datei namens "scenery.cfg" (vielleicht kennt sie der eine oder andere, ist Teil des Flight Suimulator 2004)

In dieser Datei werden Scenerien im FS angemeldet. Ein Beispieleintrag wäre:

[Area.109]
Title=QuitoFS9
Layer=109
Active=TRUE
Required=FALSE
Local=SimMarket\QuitoFS9
Remote=

Ich würde nun gern eine Batch erstellen, die mir einen neuen Eintrag am Ende der .cfg erstellt. Dabei muss die Batch erkennen welches der letzte Eintrag in der scenery.cfg ist (in diesem Falle eben [Area.109])
Bis auf Layer=XXX , der die gleiche Zahl wie [Area.XXX] haben soll, sollen die anderen Parameter wie Title=, Active= usw. direkt in der Batch festgelegt werden.

Alles in allem sollte die Batch also in etwa so etwas schreiben :

[Area.*letzter Eintrag+1*]
Title=*steht in der Batch*
Layer=*gleich Area*
Active=TRUE
Required=FALSE
Local=*steht in der Batch*
Remote=

Ich hoffe mir kann jemand von euch helfen, jetzt schonmal vielen Dank!
Mitglied: bastla
08.01.2010 um 15:14 Uhr
Hallo bladis und willkommen im Forum!

Soferne die Nummer verlässlich der letzten mit "Layer=" beginnenden Zeile entnommen werden kann, sollte das so gehen:
01.
@echo off & setlocal 
02.
set "cfg=D:\Pfad\scenery.cfg" 
03.
 
04.
set "Nr=" 
05.
for /f "tokens=2 delims==" %%i in ('findstr /b "Layer=" "%cfg%"') do set /a "Nr=%%i" 
06.
if not defined Nr echo Keine Nummer gefunden! & goto :eof 
07.
set /a Nr+=1 
08.
 
09.
(echo\ 
10.
echo [Area.%Nr%] 
11.
echo Title=*steht in der Batch* 
12.
echo Layer=%Nr% 
13.
echo Active=TRUE 
14.
echo Required=FALSE 
15.
echo Local=*steht in der Batch* 
16.
echo Remote= 
17.
)>>"%cfg%"
Grüße
bastla
Bitte warten ..
Mitglied: bladis
08.01.2010 um 15:32 Uhr
Alles klar,

das ging verdammt schnell.
Vielen Dank, funktioniert einwandfrei!
Bitte warten ..
Mitglied: bastla
08.01.2010 um 15:36 Uhr
Hallo bladis!

Freut mich, wenn's passt.

das ging verdammt schnell.
Naja, ich arbeite auf das Wochenende hin ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Führende Nullen hinzufügen (6)

Frage von Erik72 zum Thema Batch & Shell ...

Batch & Shell
gelöst Registry per Batch abfragen und INI Einträge hinzufügen bzw. ändern (18)

Frage von kampen zum Thema Batch & Shell ...

Windows Server
gelöst GPO-Eintrag für OneNote-Drucker (3)

Frage von Ravelux zum Thema Windows Server ...

Neue Wissensbeiträge
Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(3)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (41)

Frage von Datsspeed zum Thema Exchange Server ...

Windows 7
gelöst Lokales Adminprofil defekt (25)

Frage von Yannosch zum Thema Windows 7 ...

Off Topic
gelöst Fachzeitschriften als E-Book oder hardcoded? (11)

Frage von KowaKowalski zum Thema Off Topic ...

Windows 10
Windows Store Apps ohne Windows Store installieren (10)

Frage von keefien zum Thema Windows 10 ...