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

Inhalt einer (zweier) Textdatei an eine bestimmte Stelle in eine andere Textdatei (htm) einfügen

Frage Entwicklung Batch & Shell

Mitglied: GutenMorgen

GutenMorgen (Level 1) - Jetzt verbinden

04.05.2010, aktualisiert 18.10.2012, 6032 Aufrufe, 24 Kommentare

Erst einmal möchte ich meinen Hut ziehen. Ich habe in den letzten Tagen und bis eben so vieles gelesen und bin platt von der Hilfsbereitschaft und den tollen Antworten.
Habe auch bereits zwei ander Probleme lösen können und das klappt echt gut. - R E S P E K T

Folgendes habe ich leider hier nicht gefunden und ich bin sicher, dass es eine Lösung gibt.
Leider reicht mein bisherigen batch-Wissen (bisher) nicht aus. Habe Grundkenntnisse in der Batch Programmierung.

In dem Ordner "F:\Eigene Dateien\Mediator 8.0 Pro\HP IBS\HTML" befinden sich etliche "*.htm" Dateien,
die ALLE dann (inhaltlich) geändert werden sollen, wenn in der Datei ein bestimmter String vorkommt.

Der Text, der zusätzlich an eine bestimmte Stelle eingefügt werden soll, ist der Inhalt einer anderen Textdatei, die in einem Paralellverzeichnis liegt.
In diesem Verzeichnis liegt auch die zu startende "start.bat"

Manuell hab ich das immer mit copy & paste gemacht, das soll jetzt besser werden.

copy c:\a.txt + c:\b.txt c:\c.txt geht nicht, da dort ja nur hintereinander geschrieben wird.
Irgendetwas mit find ist warscheinlich die Lösung.

Beschreibung:
Suche in der ersten Datei
Wenn in der Datei "impressum.htm" der String "Austausch ABC" steht, dann ERSETZE diese Wörter durch den Inhalt der Datei
"F:\Eigene Dateien\Mediator 8.0 Pro\HP IBS\Hilfsdateien\Codeschnipsel1.txt"
und
Wenn in der Datei "impressum.htm" der String "</body>" steht, dann füge in der Zeile VOR dem Wort den Inhalt der Datei
"F:\Eigene Dateien\Mediator 8.0 Pro\HP IBS\Hilfsdateien\Codeschnipsel2.txt" ein.
und
Wenn in der Datei "impressum.htm" der String "</body>" NICHT steht, jedoch der String "</html>" dann füge in der Zeile VOR dem Wort auch den Inhalt der Datei
"F:\Eigene Dateien\Mediator 8.0 Pro\HP IBS\Hilfsdateien\Codeschnipsel2.txt" ein.
Danach die Datei speichern und die nächste Datei bearbeiten.

Danach den upload starten. (Ab hier gehts wieder)
ftp -s:dateien_per_ftp_senden.ftp ( Den Inhalt der Datei "dateien_per_ftp_senden.ftp" habe ich dank Eurer Hilfe bereits fertig.)

Vielen Dank, wenn mir jemand helfen kann
Gruß Harald
Mitglied: mkrasselt1
04.05.2010 um 22:50 Uhr
theoretisch sollte das mit einem einzigen php script zu erledigen sein,
ansonstten hab ich mals was von der textverarbeitungssoftware gehört,
die stapelverarbeitung unterstützte
wenn du mehr wissenwillst....

mkrasselt1
Bitte warten ..
Mitglied: GutenMorgen
04.05.2010 um 23:01 Uhr
Danke für Deine schnelle Antwort, aber PHP habe ich 0-Ahnung.
Es kann sein, dass hier und da weitere Dateien mit Text dazukommen, die ergänzt / getauscht werden sollen.
Es soll also etwas sein, was ICH nachher auch erweitern kann. Daher Favorisiere ich meine start.bat.
Und wie ist das mit "Textverarbeitung mit Stapelverarbeitung" gemeint?

Gruß Harald
Bitte warten ..
Mitglied: mkrasselt1
04.05.2010 um 23:10 Uhr
naja, die meisten guten programme habe eine sogenannte stapelverarbeitung,
das heißt es wird nur an einer datei aufgenommen, welche arbeitschritte zu machen sind, was wo
eingefügt, entfernt gelöscht ... wird(also alle funktionen die das programm hat),
und das ganze als befehlssatz gespeichert. dann wählt man nur noch aus, mit welchen dateien das passieren soll,
und schon erledigt das programm deine gesammte handarbeit.

mkrasselt1

PS: Ich hab jetzt zwar keine zeit zum googln, aber ich weiß, das es solche programme gibt.
Bitte warten ..
Mitglied: GutenMorgen
04.05.2010 um 23:49 Uhr
OK, alles klar, das ist NICHT meine Lösung. So etwas heißt dann manchmal auch Makroprogrammierung. Damit kann man innerhalb einer Datei was machen.
Aber mir wäre neu, wenn auch ein ganzes Verzeichnis untersucht und am ende fertig ist und danach den ftp-upload macht.
Trotzdem, vielen Dank für Deinen Ansatz.

Ich bitte weiter um eine Lösung mit batch oder etwas was bei Doppelklick startet.

Gruß Harald
Bitte warten ..
Mitglied: bankaifan
05.05.2010, aktualisiert 18.10.2012
Hallo (und) GutenMorgen,

auch ich bin noch ziemlicher Batch-Neuling und bin auch fasziniert von dieser Seite.

Zum Thema:

ich kann dir jetzt nicht direkt einen Code liefern. Aber das erste Problem wird erstmal sein, dass du den Text zwischen anderen Text schreiben willst.

Ich hab mal weng gesucht und bin auf diesen Thread hier gestoßen, vllt hilft er dir ja weiter.

http://www.administrator.de/forum/batch-textzeile-vor-bestimmten-zeiche ...

Gruß Bankaifan
Bitte warten ..
Mitglied: GutenMorgen
05.05.2010 um 10:15 Uhr
Hallo Bankaifan, danke zunächst für Dein Engagement, aber dort wird ein kurzer Text eingefügt.
Bei mir soll der Textinhalt einer Datei eingefügt werden.
Und zweitens steht der Text inmitten einer Zeile. Diese Zeile ist an irgendeiner Stelle.

hm. - Grade ist mir aufgefallen, dass der String VOR dem auszutauschenden Textteil ("Austausch ABC")
und der NACHFOLGENDE Text in jeder zu bearbeitenden Datei IMMER gleich ist.
So koennte ich eine "Text_VOR_dem_Austausch.txt" und eine "Text_NACH_dem_Austausch.txt" manuell anfertigen.
Vielleicht hilft das weiter, da ich irgendwo im Forum gelesen habe, dass man mit Batch INNERHALB einer Zeile nicht auslesen könnte.
(Wobei das erstgenannte (nur den String suchen) die komfortabelste Lösung wäre)

Wenn es nur zeilenweise geht, dann könnte man die komplette Zeile auslesen und gegen 3 Dateien austauschen.
Text_VOR_dem_Austausch.txt + Codeschnipsel1.txt + Text_NACH_dem_Austausch.txt

Eleganter stelle ich es mir vielleicht so vor, dass ich die gesamt gesuchte Zeile in eine "Diese_Textzeile1_suchen.txt" schreibe:
Wenn in der Datei der Inhalt von "Diese_Textzeile1_suchen.txt" vorkommt, dann mache Text_VOR_dem_Austausch.txt + Codeschnipsel1.txt + Text_NACH_dem_Austausch.txt

Gruß Harald
Bitte warten ..
Mitglied: bankaifan
05.05.2010 um 11:34 Uhr
^^ Ok...klingt ziemlich kompliziert. Wenn du noch Fragen zu Programmcode hast kann ich dir ggf helfen, vom Praktischen hab ich noch nicht so viel Erfahrung :D
Bitte warten ..
Mitglied: Edi.Pfisterer
05.05.2010 um 11:37 Uhr
Hallo GutenMorgen
und willkommen im Forum!

hier meine Lösung in vbs

ersetzen.vbs
01.
function louis(pfad) 
02.
zaehler = 0 
03.
zaehler1 = 0 
04.
 
05.
datei1= "F:\Eigene Dateien\Mediator 8.0 Pro\HP IBS\Hilfsdateien\Codeschnipsel1.txt" 
06.
datei2= "F:\Eigene Dateien\Mediator 8.0 Pro\HP IBS\Hilfsdateien\Codeschnipsel2.txt" 
07.
 
08.
Set fs = CreateObject("Scripting.FileSystemObject") 
09.
 
10.
Set File1 = fs.OpenTextFile(datei1 , 1, true) 
11.
codeschnipsel1 = file1.ReadAll 
12.
 
13.
Set File2 = fs.OpenTextFile(datei2 , 1, true) 
14.
codeschnipsel2 = file2.ReadAll 
15.
 
16.
 
17.
Set Folder = fs.GetFolder(pfad) 
18.
Set Files = Folder.Files 
19.
 
20.
        For Each File in Files 
21.
        zaehler = zaehler+1 
22.
        aenderung = 0 
23.
            'wscript.echo file 
24.
            if instr(file,"htm")>= 1 then 
25.
               Set datei = fs.OpenTextFile(file , 1, true) 
26.
                If datei.AtEndOfStream Then 
27.
                inhalt = "" 
28.
                Else 
29.
                inhalt = datei.ReadAll 
30.
                end if 
31.
                       if instr(1,inhalt,"Austausch ABC",1) >= 1 then 
32.
                       inhalt = replace(inhalt,"Austausch ABC",codeschnipsel1) 
33.
                       aenderung = 1 
34.
                       end if 
35.
 
36.
                       if instr(1,inhalt,"</body>",1) >= 1 then 
37.
                       inhalt = replace(inhalt,"</body>",codeschnipsel2 & "</body>") 
38.
                       aenderung = 1 
39.
                       end if 
40.
 
41.
                       if (instr(1,inhalt,"</body>",1) = 0 AND instr(1,inhalt,"</html>",1) >= 1) then 
42.
                       inhalt = replace(inhalt,"</html>",codeschnipsel2 & "</html>") 
43.
                       aenderung = 1 
44.
                       end if 
45.
                       wscript.echo inhalt 
46.
 
47.
             Set datei = nothing 
48.
 
49.
                        if aenderung = 1 then 
50.
                        zaehler1 = zaehler1 +1 
51.
                        set dateineu = fs.createtextfile(file, true) 
52.
                        dateineu.write inhalt 
53.
                        set dateineu = nothing 
54.
                        end if 
55.
 
56.
                End If 
57.
        Next 
58.
wscript.echo zaehler & " Dateien gefunden, davon " & zaehler1 & " bearbeitet" 
59.
end function 
60.
 
61.
call louis("F:\Eigene Dateien\Mediator 8.0 Pro\HP IBS\HTML")
Zerst mal mit kopierten htm-Dateien probieren - würde ich empfehlen. Konnte Funktion des Codes nicht testen, sollte aber passen...

Über positive Rückmeldung freue ich mich immer
lg
Edi

edit:
in verbindung mit deiner ftp-batch , musst Du in diese bat folgenden Code VOR deinem Code einfügen:
01.
wscript ersetzen.vbs
Bitte warten ..
Mitglied: Edi.Pfisterer
07.05.2010 um 09:17 Uhr
Hallo GutenMorgen!
Freut mich, dass Du mir so ausgelassen für meine Hilfe dankst!!!

Das ist echt das Salz der Erde

Viel Spaß noch weiterhin und: bleib so, wie du bist!!!

Gern geschehen!
Ich geh jetzt ins Wochenende und werde es dazu nützen, darüber zu sinnieren, warum ich Schnösel mit Krawatten immer in diese Blender- und Unsympathlerschublade stecke..
hmmmmm.....


Edi
Bitte warten ..
Mitglied: GutenMorgen
07.05.2010 um 09:57 Uhr
Hey hey, riesen Entschuldigung !!! Ich muss gestehen, das ich erst gestern dazugekommen bin Dein Tool zu testen.
Habe die echten Textbausteine eingebaut und laufen lassen. WOW, ich bin total geplättet, und war völlig begeistert,
dass das so toll funktioniert.
Da ich Neuling und wissbegierig bin, habe ich mich versucht in die Zeilen einzulesen um es auch zu verstehen.
Ich moechte dann nicht, wie vielleicht Andere für jeden Sch... hier im Forum anfragen. Es war weit nach Mitternacht.
Aber Du hast recht, ich hätte eigentlich GLEICH schon VOR dem Testen mich für Deine Riesenmühe bedanken sollen !!!
Schande über mich. Entschuldigung von Herzen, Deine Verbittertheit verstehe ich.
Ich hatte noch ein paar Fragen dazu, die ich dann gesammelt abgeben wollte,
damit der Beitrag nicht so ewig lang wird. Aber das kann ich jetzt wohl schenken, da ich bei Dir wohl abgek....hab. oder?
Wie auch immer Deine Haltung ist, ich wünsche Dir ein schönes Wochenende.
D A N K E

Viele Grüße Harald

PS. Übrigens trage ich in der Regel Poloshirts.
Bitte warten ..
Mitglied: Edi.Pfisterer
07.05.2010 um 12:14 Uhr
Hallo Harald!
Ich sehe, Du hast Humor und bist nicht angek... wegen meiner Motzerei!
Nix für ungut!
Freilich kannst du jederzeit Fragen zum Code stellen, ich werde mich um rasche Antworten bemühen!

btw: da muss ich eine gute Stunde gehabt haben, dass der Code ohne einen Test wirklich fehlerfrei entstanden ist...

bis zum nächsten Mal

lg und erholsames WE

Edi

[edit: als kurzes Geleit zum Verstehen des Codes: die Funktion instr liefert die Stelle, an der das gesuchte Zeichen/der String zum erstenmal vorkommt. DH, wenn das Ergebnis 0 ist, kommt der Suchbegriff gar nicht vor...; die 1 zu Beginn gibt den Suchbeginn vor (aber der 1. STelle wird gesucht), die letzte 1 gibt an, dass ein Textvergleich druchgeführt wird, wodurch Groß- und Kleinschreibung ignoriert wird... -- an letzter Stelle eine 0 würde einen Binärvergleich machen, wodurch Casesensitiv entsteht...]
Bitte warten ..
Mitglied: GutenMorgen
07.05.2010 um 12:38 Uhr
Hallo Edi, na, dann will ich schnell mal antworten... Ich lerne auch hier, wie man richtig in Foren verhält.
Besonders freue ich mich darüber, wieder in die Arme genommen zu werden. Danke!
Das zeigt Deine Stärke Deines Charakters !
So sind die Wikinger? Ich dachte immer.... nein, ich will da jetzt mal keine Vorurteile rausholen.

Ich lass Dich Dein WE erst mal genießen, werde ein wenig am Code basteln, denn in einer Datei gibt es noch mehr zu machen...
( in der Hoffnung, dass ich den PC nicht versemmle) und werde die übrigen Fragen beizeiten stellen. (Nicht heute)

Danke für den letzten Tip (Geleit). Grundlagenwissten im Detail erklärt. - supi

Genug der Worte gewechselt, lasset uns zum WE schreiten!...
Gruß aus Berlin Harald


PS. Gefunden bei TVmovie.de
UROBE, der Älteste unter den Wikinger glänzt mit seiner Weisheit...
Auf den gefährlichen Raubzügen der Wikinger passt Urobe immer besonders gut auf Wickie auf und ist für Wickie so etwas wie ein alterweiser Mentor...
Bitte warten ..
Mitglied: bankaifan
07.05.2010 um 13:28 Uhr
lol...ist ja echt interessant geworden die Unterhaltung hier. Aber freut mich dass ihr euch wieder einig seit, sonst hätt ich hier ggf mal ein wörtchen mit euch gesprochen :D wenn die zeit gekommen ist werde ich mich auch mit vbs und shell beschäftige, im moment lebe ich für batch :D

Also auch von mir ein wunderschönes WE euch beiden...

"Hey Hey Wickie, hey Wickie..." *sing*
Bitte warten ..
Mitglied: Edi.Pfisterer
07.05.2010 um 20:28 Uhr
Hallo Harald!
Bin trotz Wochenende und Gelübde, die Kiste in der Freizeit nicht anzugreifen doch noch kurz online (vor allem wegen dieser Parallelwelt, in der die Edis fragen und die Haralds antworten )


Naja, und weil ich jetzt das Gelübde schon gebrochen habe noch ein paar Tipps:

Das Tool läuft - kurz gesagt - so ab:
zeile 1: definition des namens der funktion (bei uns louis - der name, der mir als erstes eingefallen ist...)
In Zeile 11 u 14 lese ich den Inhalt der zuvor definierten Datei ein und weise den Inhalt den beiden Variablen schnipsel1 u 2 zu
zeile 20: schleifenbeginn (for each file)
zeile 24: damit das tool sich nur um htm dateien kümmert, schaue ich nach, ob der dateiname die zeichen "htm" enthält.
zeile 29: der inhalt der htm wird gelesen
zeile 31: wenn ABC... vorkommt (dh, Position des 1. Vorkommens ist größergleich 1), dann zeile 32: Austausch von ABC gegen den Inhalt der Variable aus zeile 11
zeile 32: variable änderung wird auf 1 gesetzt
gleiches passiert dann mit den anderen änderungen, die mit dem wörtchen AND verbunden sind, damit beide erfüllt sein müssen
gleiches? eigentlich ähnliches, da
inhalt = replace(inhalt,"</body>",codeschnipsel2 & "</body>") dazu führt, dass
</body> ersetzt wird durch den inhalt von schnipsel2 und </body> (da du ja wolltest, dass der inhalt VOR den body-tag gesetzt wird)
zeile 47 die Datei wird geschlossen (weil sie ja nur zum lesen geöffnet wurde... und jetzt wollen wir schreiben (wenn es etwas auszutauschen gibt).

zeile 49: wenn wir etwas ändern wollen (weil oben der wert der variable aenderung auf 1 gesetzt wurde)
zeile 51: wir schreiben die betreffende datei komplett neu (true gibt an, dass sie überschrieben wird, falls vorhanden...)
52: die variable inhalt enthält ja den bereits geänderten Inahlt, daher schreiben wir diese in die entsprechende Datei
53: datei schliessen
57: next lässt und wieder in zeile 20 springen für die nächste datei
und damit er beim nächsten durchlauf wieder nachschaut, ob wir wirklich etwas ändern wollen, wird der wert der variable aenderung auch in zeile 20 wieder auf 0 gesetzt.

die beiden zaehler sind nur ein Gag, die kannst du auch ersatzlos rauswerfen...
(da zaehler1 nur erhöht wird, wenn die variable aenderung beim jeweiligen druchlauf (= bei der gerade geöffneten datei mit der endung htm) auf 1 gesetzt wurde, der andere zaehler jedoch bei jeder datei erhöht wird, haben wir 2 werte...)
58: einfach nur eine ausgabe, kann gestrichen werden oder durch ein hochkomma (wie in zeile 23) vorübergehend auskommentiert werden

zeile 61: die funktion namens louis wird mit dem Pfad aufgerufen, in dem die dateien stecken...


lg
erholsames wochenende
edi

[Zitat]
so etwas wie ein alterweiser Mentor...
[/Zitat]
naja, wenn das TVMOVIE so sagt, dann wirds schon stimmen
Bitte warten ..
Mitglied: GutenMorgen
07.05.2010 um 23:58 Uhr
Hallo Edi, mir gings ähnlich, eigentlich wollte ich schon in der Kiste liegen. (Kiste=andere Variable als bei Dir) und bin vor der
Datensicherung (mit batch geschrieben inkl shutdown ect.) versehentlich auf Emailsabrufen gegangen.

Dein Text ist der HAMMER. Werde die Tage das mit meinem Projekt genau unter die Lupe nehmen.
D A N K E

Bevor ich Dich nur noch mit Lobeshymnen vollsülze, mach ich lieber Schluß und wünsche viel Spaß in Deiner Paralellwelt.

beste Grüße Harald
Bitte warten ..
Mitglied: Edi.Pfisterer
11.05.2010 um 10:16 Uhr
Hallo Harald!
Auto läuft respektive fährt wieder, kann mich nun also wieder Deines Problems annehmen - sofern nötig.

noch ein Tipp:
Syntax replace:
replace(worin_gesucht_werden_soll, was_gesucht_werden_soll, wodurch_ersetzt_werden_soll)
Bsp: replace("Citroen baut wundervolle Autos", "wundervoll", "spannend") ergibt Citroen baut spannende Autos
daher
replace("Citroen baut wundervolle Autos", "wundervoll", "wundervoll spannend") ergibt Citroen baut wundervoll spannende Autos

lg
Bitte warten ..
Mitglied: GutenMorgen
03.06.2010 um 01:36 Uhr
Hallo Edi,

ich möchte mich an dieser Stelle noch einmal herzlich bei Dir bedanken ! DANKE.
...und ein Feedback geben. (Woran damnn auch eine Frage geknüpft ist.
Das Script habe ich fuer diverse Aufgabe nun im Einsatz.
Hatte gar nicht gedacht, dass man damit so viel machen kann. hi hi.
Habe hier und da durch experimentieren die Sachen rausgefunden die ich brauche.
Sicher für dich keine große Sache, aber ich bin wirklich begeistert, ich füge von etlichen Dateien die richtigen strings ein!
Nur bei einer Sache komme ich nicht weiter:

z.B. auf Zeile 31. kennzeichen die Gänsefüßchen den zu suchenden Text. - klar, verstanden.
Was ist aber, wenn der zu suchenden Text selbst Gänsefüßchen hat ?
Textbeispiel: <FRAME name="main" scrolling="no" noresize src="" target="_self">
Hab schon verschiedenes mit Klammern versucht, oder mit ! - leider kommt immer eine Fehlermeldung und der Abbruch.
Zeile 32. sieht dann warscheinlich nach dem Schema aus aus?

31. if instr(1,inhalt,"Austausch ABC",1) >= 1 then
32. inhalt = replace(inhalt,"Austausch ABC",codeschnipsel1)


Wenn ich nicht gleich antworten kann, bitte nicht bös´ sein.
Vielen Dank schon mal im Vorraus.

Gruß aus Berlin (Wir haben heute keinen Feiertag!)
Harald
Bitte warten ..
Mitglied: Edi.Pfisterer
07.06.2010 um 09:27 Uhr
Hallo!
hier wird etwas Licht in die Verwendung der Anfürhungszeichenproblematik gebracht...

dh für dich:
Annahme, du willst folgenden String gegen codeschnipsel1 austauschen...

<FRAME name="main" scrolling="no" noresize src="" target="_self">

die Lösung:

01.
temp= "<FRAME name= ""main "" scrolling= ""no "" noresize src= """" target= ""_self "">" 
02.
 
03.
if instr(1,inhalt,temp,1) >= 1 then 
04.
inhalt = replace(inhalt,temp,codeschnipsel1)  
05.
end if


Tipp:
lass Dir obige Zeichen mal wie folgt ausgeben:
test.vbs
01.
temp= "<FRAME name= ""main "" scrolling= ""no "" noresize src= """" target= ""_self "">"  
02.
wscript.echo temp
Falls das Ergebnis so aussieht, wie du es möchtest, kannst du dann die Variable temp in Deinen code einbauen

gutes gelingen
lg
Edi
Bitte warten ..
Mitglied: GutenMorgen
16.08.2010 um 13:36 Uhr
Hallo Edi,

funktioniert wunderbar.
Das Gerüst ist optimal für die Zwecke einsetzbar.
Text löschen, Text tauschen, Text anhaengen.

Vielen Dank
Gruß Harald
Bitte warten ..
Mitglied: Edi.Pfisterer
30.08.2010 um 11:06 Uhr
Hallo Harald!
War im laaaangen Urlaub (Lehrer müsste man sein
freut mich, dass alles so funktioniert, wie Du es brauchst!

falls Dich mal wieder wo der Schuh drückt:
Jederzeit gerne!

lg
Edi
Bitte warten ..
Mitglied: GutenMorgen
11.02.2014 um 15:52 Uhr
Hallo Edi,
ich hoffe es geht dir gut und dein Citroen schnurrt noch.
Dein Skriptgerüst ist weiterhin im Einsatz und leistet sehr gute Dienste.
"louis" ist immer bei mir.

Nun stehe ich vor einer Sache, an der mir der Schuh drückt und ich wollte dich fragen, ob du mir mir helfen kannst?


Bislang ist das Scipt wohl so ausgelegt, dass es in dem Verzeichnis sucht, wo es gestartet wird.
Wie bekomme ich das hin, dass es auch in sämtliche Unterordner "reinschaut" ?
(Der Ordner "F:\Eigene Dateien\upload" hat ganz viele Unterordner.)

function louis(pfad)
zaehler = 0
zaehler1 = 0

datei1= "F:\Eigene Dateien\upload\AenderungNeuerText.txt"

Set fs = CreateObject("Scripting.FileSystemObject")

Set File1 = fs.OpenTextFile(datei1 , 1, true)
codeschnipsel1 = file1.ReadAll


Set Folder = fs.GetFolder(pfad)
Set Files = Folder.Files

For Each File in Files
zaehler = zaehler+1
aenderung = 0
'wscript.echo file
if instr(file,".bat")>= 1 then
Set datei = fs.OpenTextFile(file , 1, true)
If datei.AtEndOfStream Then
inhalt = ""
Else
inhalt = datei.ReadAll
end if


if instr(1,inhalt,"-server smtp.strato.de",1) >= 1 then
inhalt = replace(inhalt,"-server smtp.strato.de",codeschnipsel1)
aenderung = 1
end if



Set datei = nothing

if aenderung = 1 then
zaehler1 = zaehler1 +1
set dateineu = fs.createtextfile(file, true)
dateineu.write inhalt
set dateineu = nothing
end if

End If
Next
wscript.echo zaehler & " Dateien gefunden, davon " & zaehler1 & " bearbeitet"
end function

call louis("F:\Eigene Dateien\upload\")


Es wäre toll, wenn ich hier eine Lösung erhalte.

Es grüßt herzlich
Harald
Bitte warten ..
Mitglied: Edi.Pfisterer
11.02.2014 um 18:39 Uhr
hallo!
bin im skiurlaub...
schaus mir nächste woche an...
lg
edi

ps: dem nachwuchs zuliebe: fahre dzt passat
Bitte warten ..
Mitglied: GutenMorgen
11.02.2014 um 19:02 Uhr
Hallo Edi,
wow, mit einer Reaktionszeit von 2,5 Stunden hätte ich jetzt wirklich nicht gerechnet.
Das ist ja Olympiareif und riecht nach Gold. - ha ha

Geniesse deinen Skiurlaub und komme gesund wieder.
Ich freue mich über einen Lösungsvorschlag.
lg
Harald
Bitte warten ..
Mitglied: GutenMorgen
28.03.2014 um 01:01 Uhr
Liebe Fangemeinde,

auch wenn ich hier keine Antwort bekommen habe, möchte ich gerne von meiner gefundene Lösung berichten.
Die Lösung ist zwar kein Script, sondern ein fertiges kleines Utility: FAR (Find And Replace)
http://sourceforge.net/projects/findandreplace/

Funktioniert sehr gut mit der grafischen Oberfläche.
Im ersten Schritt musst Du die Dateien suchen (z.B. *.bat), und
im zweiten Schritt werden die Zeichenketten in den Inhalten ausgetauscht.
Zeigt Dir alle Dateien an, die in das Suchmuster passen, und
dann auch die Anzahl der Ersetzungen.
Braucht wohl Java als Voraussetzung, aber das ist meist schon installiert.
Viele Spass an Alle, die ein ähnlich gelagertes Problem haben.

VG Harald
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
Text in neue 1. Zeile in Textdatei einfügen (4)

Frage von FuxxLi zum Thema Batch & Shell ...

Visual Studio
gelöst VBS schreibt bestimmte Variable nicht in Textdatei (11)

Frage von Saschaaaaa zum Thema Visual Studio ...

Batch & Shell
gelöst Inhalt aus ca. 106.000 TXT Dateien zu einer einzigen Textdatei "mergen" mit Abstandseinbau (1)

Frage von lukeskywalker501 zum Thema Batch & Shell ...

Exchange Server
Inhalt von Postfächern in Exchange löschen (9)

Frage von m.reeger zum Thema Exchange Server ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...