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

Mit C einen Text String in einer Bat verändern...Hiilfeee!

Mitglied: j1rechert

j1rechert (Level 1) - Jetzt verbinden

21.10.2005, aktualisiert 24.10.2005, 5212 Aufrufe, 17 Kommentare

Hallo Leute,

ich hoffe mir ist noch zu helfen. Versuche gerade mir ein wenig Cbeizubringen und "oh Wunder"....jede Menge Probleme und Fragen

Ich möchte mittels C oder Cplusplus einen Text String in einer .bat verändern.
Einfach in der .bat die beiden Wörter suchen lassen und durch andere ersetzen.

Hab jetzt nun einige Stunden mit versuchen und suchen verbracht....ich kriegs aber nicht gebacken.

Kann mir jemand sagen wie das funktioniert??

greets
Mitglied: ketchup
21.10.2005 um 21:13 Uhr
warum gerade mit C?

Bitte warten ..
Mitglied: 13100
21.10.2005 um 22:50 Uhr
was'n dat für ne eigenartige beschreibung.
kann man die mal klar definieren?
Bitte warten ..
Mitglied: j1rechert
22.10.2005 um 12:44 Uhr
na ja, weil ich C lernen möchte
Bin aber für alle Vorschläge offen
Bitte warten ..
Mitglied: j1rechert
22.10.2005 um 12:48 Uhr
also nochmal eine genauere Beschreibung:

Ich hab ein Login script (login.bat) in der ich einen Wert verändern möchte, der bei einer Prüfung ein Popup ausgibt. Dieses Popup möchte ich unterdrücken indem ich den Wert verändere und die Veränderung möchte ich über ein anders Script herführen (am liebsten in C/C++).
Bitte warten ..
Mitglied: 13100
22.10.2005 um 13:38 Uhr
kannst du mal dein loginscript posten, zumindest
den betreffenden teil.
Bitte warten ..
Mitglied: j1rechert
22.10.2005 um 13:49 Uhr
dier der betreffende Text String:
SET FEHL=0
for /f "tokens=1,* delims=:" %%a in ('TYPE %temp%\login.log ^| find "Fehlend: "') do echo %%b >> %temp%\login.log.f& SET FEHL=1
IF NOT "%FEHL%"=="1" goto nopopup
(In dem Log wird geprüft ob eine Anwendung fehlt oder nicht zu erreichen ist und wird per Popup gemeldet.
ich möchte die Variable SET FEHL=1 verändern in SET FEHL=0 damit das Popup nicht mehr hochkommt. Da diese bat auf vielen Rechnern liegt und einige lokal nicht zu erreichen sind, möchte ich über ein Script oder eine EXE diese Veränderung remote ausführen.
Bitte warten ..
Mitglied: ketchup
22.10.2005 um 16:00 Uhr
dier der betreffende Text String:
SET FEHL=0
for /f "tokens=1,* delims=:" %%a
in ('TYPE %temp%\login.log ^| find
"Fehlend: "') do echo %%b >>
%temp%\login.log.f& SET FEHL=1
IF NOT "%FEHL%"=="1"
goto nopopup
(In dem Log wird geprüft ob eine
Anwendung fehlt oder nicht zu erreichen ist
und wird per Popup gemeldet.
ich möchte die Variable SET FEHL=1
verändern in SET FEHL=0 damit das Popup
nicht mehr hochkommt. Da diese bat auf vielen
Rechnern liegt und einige lokal nicht zu
erreichen sind, möchte ich über
ein Script oder eine EXE diese
Veränderung remote ausführen.


kopier einfach eine neue version via logon-script hin.
Bitte warten ..
Mitglied: j1rechert
22.10.2005 um 16:39 Uhr
Okay..hab nun einen anderen Weg versucht.
Nun will ich über C eine komplett neue Datei erstellen in der das ganze Script rein geschrieben wird.
Der Compiler hängt sich aber bei dem Text (fprintf (datei, "if /i "%1"=="-r" echo) an den Sonderzeichen auf. Fehler lt. invalid operands of types 'const char[7] and int to binary operator%....wie kann ich in C die Umsetzung der Sonderzeichen bewerkstelligen??
Bitte warten ..
Mitglied: 13100
22.10.2005 um 18:00 Uhr
anführungszeichen: \"
anführungszeichen innerhalb eines, in anführungszeichen
gehaltenen stings, werden selten richtig interpretiert.
bei sonderzeichen sieht es auch nich besonders rosig aus.
wäre bei einer kompletten neuschreibung, eine
batchdatei nich sinnvoller?

rem * ins entsprechende verzeichnis wechseln
cd /d c:\windows

rem
* weg mit dem alten script
del script.cmd

rem * erstellen des neuen scripts, bzw
rem
* reinklatschen der neuen zeilen
echo "zeile1 von meinem neuen script" >> script.cmd
echo "zeile2 von meinem neuen script" >> script.cmd
echo "zeile3 von meinem neuen script" >> script.cmd
Bitte warten ..
Mitglied: j1rechert
22.10.2005 um 18:16 Uhr
über die von dir genannte Möglichkeit habe ich auch nachgedacht, ist aber nicht der Sinn der Übung da ich es in C bewerkstelligen möchte.
Einfach eine .exe basteln die das ganze umsetzt, entweder eine komplett neue Datei mit dem nötigen Inhalt erstellt oder diesem SET Eintrag einen anderen Wert zuweist.
Das muss doch irgenwie zu handeln sein.
Übrigens ...Danke für deine Mühe
Bitte warten ..
Mitglied: ketchup
22.10.2005 um 20:20 Uhr
über die von dir genannte
Möglichkeit habe ich auch nachgedacht,
ist aber nicht der Sinn der Übung da
ich es in C bewerkstelligen möchte.
Einfach eine .exe basteln die das ganze
umsetzt, entweder eine komplett neue Datei
mit dem nötigen Inhalt erstellt oder
diesem SET Eintrag einen anderen Wert
zuweist.
Das muss doch irgenwie zu handeln sein.
Übrigens ...Danke für deine
Mühe

hm, also hab ich das richtig verstanden?
nur damit du dich mit C herumspielen kannst möchtest du für dein problem eine lösung über 97 umwege basteln?

wenn auf jedem client/server die gleiche datei liegt und du überall auch wieder die gleiche datei haben willst, dann erstelle dir doch diese neue datei lokal bei dir und kopiere sie dann einfach auf die jeweiligen clients.
ist 100mal einfacher und mit 1000mal weniger aufwand verbunden als ein edit-programm in C zu schreiben.
würds ja noch verstehen wenn du es in PERL oder kix32 lösen wollen würdest.
du kannst das problem aber auch einfach in batch lösen, indem du dich sed oder ähnlichem beschäftigst, die dir dann dein file editieren und nur den einen wert anpassen.

bist wohl ein admin mit zuviel zeit und zuwenig arbeit
Bitte warten ..
Mitglied: Guenni
24.10.2005 um 00:17 Uhr
über die von dir genannte
Möglichkeit habe ich auch nachgedacht,
ist aber nicht der Sinn der Übung da
ich es in C bewerkstelligen möchte.

@j1rechert

Hi,

wenn du das in C, C++, Pascal oder in was für eine Sprache auch immer
bewerkstelligen willst, eine Datei "remote" zu verändern, so wirst du ZWEI
Programme schreiben müssen.

Ein Programm läuft auf der "Remote-Maschine" als Server, also als ein
Programm, das auf Anfragen lauscht, um Dienste anzubieten.

Das zweite Programm, ist das Programm, das diese Dienste(als Client) in Anspruch nimmt.

Analog dazu nimm einfach das Beispiel Telnet. Ein Telnet-Client ist ein Programm
das auf einen anderen Computer zugreift. Was braucht man dazu?.....

.....einen Computer, der Telnet-Dienste bereitstellt.

Gruß
Günni
Bitte warten ..
Mitglied: ketchup
24.10.2005 um 08:05 Uhr
wenn du das in C, C++, Pascal oder in was
für eine Sprache auch immer
bewerkstelligen willst, eine Datei
"remote" zu verändern, so
wirst du ZWEI
Programme schreiben müssen.


hi,
da muss ich dir leider widersprechen.
es ist NICHT notwendig eine client-server-applikation zu schreiben.
auch wenn ers unbedingt in C oder sonst was schreiben möchte.
wozu gibt es UNC-Pfade bzw. Shares?

jürgen
Bitte warten ..
Mitglied: j1rechert
24.10.2005 um 12:00 Uhr
Hi,

also ich hab es hinbekommen
Hab nur noch 2 kleine Problemchen:
Bei der Ausgabe schreiben in die Datei möchte ich ein Doppel Backslash und 2 mal das % Zeichen (also \\ und %%) ausgeben lassen. Er gibt mir aber immer nur eins aus. Ich wiess daß ich einen Backslash und ein % Zeichen mit einem zusätzlichen escapen muss, aber wie kommentiere ich im Compiler daß er mir die Zeichen doppelt ausgibt (z.B.: \\server\)?
Bitte warten ..
Mitglied: ketchup
24.10.2005 um 12:11 Uhr
noch 2 backslashes dazu?!

zb \\\\ => 2 backslashes escaped
beim % das gleiche

jürgen
Bitte warten ..
Mitglied: j1rechert
24.10.2005 um 13:05 Uhr
thanks....geht einwandfrei
Bitte warten ..
Mitglied: Guenni
24.10.2005 um 22:43 Uhr
@ketchup

Hi,

das ist mir hinterher auch eingefallen, was ich da geschrieben hatte, aber da lag ich
schon im Bett, und hatte keine Lust mehr aufzustehen, um meinen "Senf" den ich
dazugegeben hab zu korrigieren.


Gruß
Günni
Bitte warten ..
Ähnliche Inhalte
C und C++
C++ String in Funktion
gelöst Frage von coolkaiserABCC und C++7 Kommentare

Hallo Ich würde gern eine Funktion schreiben die mir einen string "wert" setzt. So hab ich es geschrieben (sieh ...

Batch & Shell

Mit Batch nach einem String in allen bat Dateien auf C suchen und die gefundenen evtl. löschen

gelöst Frage von xxxxxxxBatch & Shell8 Kommentare

Hallo liebe Forummitglieder, Ich habe schon viele nützliche Beiträge bei Ihnen gefunden und bin daher sehr begeistert von Ihren ...

C und C++

Problem mit C basiertem Text Spiel

Frage von TheBest4everC und C++2 Kommentare

Hi, Ich habe mir als C Anfänger ein textspiel geschrieben und bin dann auf ein Problem gestoßen: ich hab ...

Batch & Shell

Text Datei bis bestimmten String kopieren und auslagern

Frage von SKBadoxBatch & Shell4 Kommentare

Hallo zusammen, wie der Titel schon sagt suche ich nach einem .bat Skript dass vom Anfang der .txt Datei ...

Neue Wissensbeiträge
Peripheriegeräte
Unterschrank für HP Drucker
Tipp von NixVerstehen vor 2 TagenPeripheriegeräte3 Kommentare

Als kurzen Freitags-Tipp möchte ich gerne meinen neuen Drucker-Unterschrank Modell Amica KS 15423W vorstellen. Das Gerät eignet sich hervorragend ...

Windows 10
Windows 10 - Probleme mit Point-And-Print
Tipp von emeriks vor 3 TagenWindows 103 Kommentare

Hi, wir kämpfen z.Z. mit einigen Druckertreibern, welche unter Win10 beim Verbinden eines Druckers von Printserver mit dem Dialog ...

Windows 10

Windows 10 1803 - Ihr Roamingbenutzerprofil wurde nicht vollständig synchronisiert

Anleitung von Deepsys vor 3 TagenWindows 101 Kommentar

Bei allen Windows 10 1803 PCs traten Probleme mit den Servergespeicherten Profilen auf. Das Abmelden dauerte sehr lange und ...

Exchange Server
Exchange - Fehler mit 2018-07 Sicherheitsupdate
Tipp von ArnoNymous vor 5 TagenExchange Server7 Kommentare

Hallo, es gibt mal wieder Freude mit den MS-Updates. KB4338814 führt dazu, dass der Exchange keine Mails mehr zustellt. ...

Heiß diskutierte Inhalte
Server-Hardware
DL380p Gen8 LEDs Laufwerksaktivität funktionieren nicht
Frage von Cisco7971Server-Hardware17 Kommentare

Hallo zusammen, ich habe hier ein seltsames Problem: Die LEDs an den Smart Carriern, die bei Laufwerksaktivität rotieren, tun ...

Server-Hardware
Einsteigerfragen zu HP ProLiant DL380p Gen 8
gelöst Frage von brain2011Server-Hardware15 Kommentare

Hallo, ich habe mir einen HP ProLiant DL380p Gen 8 zugelegt, um mich grundlegend mit dieser Geräteklasse und der ...

Windows Server
Leistungsindikatoren WS2012R2
Frage von Der.ITlerWindows Server11 Kommentare

Hallo Gemeinde, seit gestern habe ich auf zwei von meinem 8 Hardwareservern folgendes Problem, dass die Leistungsindikatoren nicht gestartet ...

Windows Server
Server 2016 verwalten ohne Domäne
gelöst Frage von cyberworm83Windows Server9 Kommentare

Hi zusammen, und zwar habe ich folgendes Probelm: Ich habe einen Server 2016 Datacenter den ich an meine FritzBox ...