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 bearbeiten

Mitglied: Breaker23

Breaker23 (Level 1) - Jetzt verbinden

05.09.2011, aktualisiert 14:54 Uhr, 4487 Aufrufe, 6 Kommentare

Bin absoluter Anfänger was Batch betrifft, bitte um Nachsicht!

Folgendes Problem:

Es muss eine bestimmte Zeile in einer ini-Datei geändert werden, fehlt dieser, ist nichts zu machen.

Habe mir gefühlte 99 Threads durchgelesen, bin bei meinen Umsetzungen auf Probleme gestossen, habe Lösungen dazu gefunden und bin dann erneut auf Probleme gestossen...
Nun verzweifle ich, und bitte um Hilfe. So sieht es aktuell bei mir aus:

01.
@echo off & setlocal 
02.
Set "Suchwort=UseUSB" 
03.
Set "ErsatzZeile=UseUSB ^= 0" 
04.
 
05.
If exist D:\temp\new.txt del D:\temp\new.txt 
06.
 
07.
For /F "delims=" %%i in (D:\temp\eingabe.ini) do (  
08.
    Echo %%i|Findstr /b %Suchwort% >nul  
09.
    If Errorlevel 1 ( 
10.
      echo %%i>>D:\temp\new.txt 
11.
      ) Else ( 
12.
         echo %ErsatzZeile%>>D:\temp\new.txt 
13.
14.
15.
move D:\temp\new.txt D:\temp\eingabe.ini

In der ini-Datei steht diese Zeile: UseUSB=1
Dieser soll in UseUSB=0 umgeändert werden.

Habe inzwischen gemerkt, das ein Gleichheitszeichen beim deklarieren Probleme macht, also habe ich es bei der Suche mal rausgenommen, und suche nur nach "UseUSB".
Beim Schreiben maskiere ich es, habe aber zwei Probleme:
1. die "0" funktioniert in der 3. Zeile nicht! Gebe ich in der 3. Zeile irgendeinen anderen Wert ausser "0" ein, dann läufts (auch 00 geht)
2. die Leerzeichen müssen eigentlich auch weg, aber "Set "ErsatzZeile=UseUSB^=0" geht leider auch nicht

Es soll über eine reine Batch-Datei laufen (kein vbs bzw. "sed" möglich)

Wie kann ich den Code da oben optimieren?? Vielen lieben Dank im Voraus!!

Gruß Breaker

Nachtrag: das mit "echo off" ist mir natürlich auch bewusst, dass es während der Entiwcklung rausgehört
Mitglied: 60730
05.09.2011 um 15:00 Uhr
moin,

Nachtrag: das mit "echo off" ist mir natürlich auch bewusst, dass es während der Entiwcklung rausgehört face-smile

  • hast du aber Schwein gehabt
01.
for /f "delims=*" %%a in (D:\temp\eingabe.ini) do ( 
02.
	if not "%%a"=="usb=1" echo %%a>>D:\temp\eingabe.txt 
03.
	if "%%a"=="usb=1" echo usb^=^0>>D:\temp\eingabe.txt 
04.
05.
copy D:\temp\eingabe.txt D:\temp\eingabe.ini 
06.
pause
Gruß
Bitte warten ..
Mitglied: 99045
05.09.2011 um 15:09 Uhr
Moin,

die Zeile 5 kannst du noch kürzen:
del D:\temp\new.txt 2>nul
Wenn sie sowieso weg soll, brauchst du auch nicht erst zu überprüfen, ob sie da ist.

Gruß

hast du aber Schwein gehabt
ROFL
Bitte warten ..
Mitglied: Breaker23
05.09.2011 um 15:23 Uhr
Hui, das ging aber schnell!

@TimoBeil: Nach ein paar Anpassungen und Korrekturen( ) deines Codeschnipsels klappt es nun wunderbar!!
@99045: deinen Tipp hab ich mal übernommen, somit ein paar Bytes im Arbeitsspeicher gespart


Ich muss aber sagen, dass ich diese Lösung (bzw. diese Variante) irgendwie in den gefühlten 99 Threads die ich gelesen habe nicht gesehen habe

Nochmals danke für die prompte Hilfe!

Gruß Breaker
Bitte warten ..
Mitglied: Lochkartenstanzer
05.09.2011 um 19:07 Uhr
Sofern Du nicht auf batch festgelegt bist, könntest Du mit der bash (cygwin) das in einem Einzeiler machen:
sed -i /cygdrive/d/temp/eingabe.ini  -e "s/UseUSB=1/UseUSB=0/g"
Bitte warten ..
Mitglied: mathe172
05.09.2011 um 21:22 Uhr
Hallo,
[OT]
@Lochkartenstanzer:
Es soll über eine reine Batch-Datei laufen (kein vbs bzw. "sed" möglich)

Sofern Du nicht auf batch festgelegt bist, könntest Du mit der bash (cygwin) das in einem Einzeiler machen:
sed ...
Hast du die Frage durchgelesen?

Hat man dich zwar schon gefragt: Du hälst wohl sehr viel von cygwin, oder ?
[/OT]
MfG,
Mathe172
Bitte warten ..
Mitglied: Lochkartenstanzer
05.09.2011 um 22:07 Uhr
Zitat von mathe172:
> Es soll über eine reine Batch-Datei laufen (kein vbs bzw. "sed" möglich)

Ups, die Zeile habe ich wohl im Eifer des Gefechts übersehen. (Ich könnte schwören, die war vorher nicht da).

Du hälst wohl sehr viel von cygwin, oder face-wink?

ja. Ich benutze das sehr oft auf Kundensystemen unter Windows, weil ich da vieles elegander lösen kann als unter cmd.exe und vor allem nicht "von hinten durch die Brust ins Auge" schießen muß.

Manchmal kann ich mich halt nich zurückhalten, wenn ich wieder wilde BAT-Konstrukte sehe. Ich mache das zwar auch oft, asber nur dann wenn es überhaupt nicht anders geht. die cygwin/bash-skripten udn Kommandos sind übrigens ganz einfach auch in BAT-Dateien nutzbar, wenn die Pfade richtig gesetzt sind.

lks
Bitte warten ..
Ähnliche Inhalte
Windows Server

Terminalserver .ini Datei unter C:Windows

gelöst Frage von geocastWindows Server8 Kommentare

Guten Abend zusammen Ich habe mir hier einen Server 2012R2 Terminalserver zum Testen aufgesetzt. Ich habe dann unsere alte ...

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

Visual Studio

Anfängerfrage zu INI-Dateien bei der Programmierung

gelöst Frage von Freund.der.NachtVisual Studio6 Kommentare

Guten Tag an alle! Ich habe in VB.Net ein Programm geschrieben. Da dieses Programm auch Einstellungen speichern muss, legt ...

Batch & Shell

INI Datei über Batch Script verändern

Frage von SchmidleBatch & Shell3 Kommentare

Hallo zusammen, ich muss in einer ini Datei einen Eintrag anpassen, der den ProxyServer hinterlegt. Wir haben einen neuen ...

Neue Wissensbeiträge
Linux Netzwerk

Installation eines Logservers mit Loganalyzer als Debian-VM auf Hyper-V

Anleitung von lcer00 vor 2 StundenLinux Netzwerk

Zuerst sei auf den schönen Beitrag von aqui hier im Forum verwiesen, in dem die loganalyzer-installation bereits beschrieben ist: ...

Humor (lol)
Antennagate 2018
Information von magicteddy vor 2 StundenHumor (lol)2 Kommentare

Da haut der angekaute Elektronikhersteller die teuersten Geräte auf den Markt und bekommt anscheinend die Basics mal wieder nicht ...

Datenschutz

Die Datenkrake Google verlängert ihr Arme mal wieder ein wenig, automatische Anmeldung

Tipp von magicteddy vor 1 TagDatenschutz3 Kommentare

Benutzer mit einem Google Account und gespeicherten Zugangsdaten werden von chrome 69 automatisch bei Google angemeldet, natürlich alles zum ...

Verschlüsselung & Zertifikate
Meine Wissenssammlung zu Bitlocker
Erfahrungsbericht von DerWoWusste vor 2 TagenVerschlüsselung & Zertifikate3 Kommentare

Die Motivation für diesen Beitrag waren die vielen Posts rund um dieses Thema, die deutlich machen, wie viele Einzelaspekte ...

Heiß diskutierte Inhalte
E-Mail
Welche ist die beste E-Mail Groupware für die Zukunft?
Frage von ITCrowdSupporterE-Mail24 Kommentare

Guten Tag allerseits :) Ich möchte mich mit einer Frage heute mal an die Schwarmintelligenz wenden. Aktuell befasse ich ...

Windows Server
In-Place Upgrade von Windows Server 2008 R2 Datacenter zu Windows Server 2016 Datacenter (Zwischenschritt über 2012 R2)
gelöst Frage von TowerpleaseWindows Server16 Kommentare

Hallo Administratoren, Wir haben uns vor ein paar Monaten Windows Server 2016 Datacenter Lizenzen gekauft und wollen nun unsere ...

Windows 7
Mit gpedit gesetzte Richtlinien in rsop.msc nicht definiert und ausgegraut
gelöst Frage von 137006Windows 715 Kommentare

Hallo zusammen, anfangs verweise ich fairerweise daruf dass ich dieses Thema bereits im Forum angeschnitten habe, nachdem ich hier ...

Firewall
Wesyb Offline
Frage von DkuehlbornFirewall14 Kommentare

Hallo Kollegen, ein Kunde hat von Wesyb die Sicherheitslösung im Einsatz. Seit August scheint deren Internetseite nicht mehr verfügbar ...