kuehnlm 10 Posted July 27, 2004 Report Share Posted July 27, 2004 Hallo, ich habe eine TXT-Datei, in der ich alle Zeilen oberhalb von dem Eintrag "Services" und unterhalb des Eintrags "Network Card" löschen. Wie kann ich das mit einem Batch machen?? Danke Quote Link to comment
Flare 12 Posted July 27, 2004 Report Share Posted July 27, 2004 Hi, dafuer koenntest du den online streamin editor sed nehmen. Pumpst quasi deine txts dadurch, und hinten kommt dein ergebnis raus.. http://sed.sourceforge.net/grabbag/ssed/sed-3.59.zip Alleridngs musst du dich noch ein bischen damit beschaeftigen .. Flare Quote Link to comment
kuehnlm 10 Posted July 27, 2004 Author Report Share Posted July 27, 2004 Gibt's dafür auch irgendwie ne Help oder so was??? Quote Link to comment
Flare 12 Posted July 27, 2004 Report Share Posted July 27, 2004 Hi, findest du wahrscheinlcih hier.. Flare Quote Link to comment
kuehnlm 10 Posted July 27, 2004 Author Report Share Posted July 27, 2004 na, dann mach ich mich mal auf die Suche - vielleicht kapier ich das ja... :) Quote Link to comment
Flare 12 Posted July 27, 2004 Report Share Posted July 27, 2004 ups link vergessen :) http://www.cornerstonemag.com/sed/ Quote Link to comment
kuehnlm 10 Posted August 2, 2004 Author Report Share Posted August 2, 2004 Jetzt hab ich mir das mal angeschaut - aber ich blick da nicht durch...kann mir da jemand mal helfen??? Ich hab ne Textdatei (Anhang) und da möchte ich alles über dem Ausdruck "Services" und alles ab "Network Card" löschen....wie mach ich das??? DAAAANKE test.txt Quote Link to comment
real_tarantoga 11 Posted August 2, 2004 Report Share Posted August 2, 2004 sed -n "65,158p" <test.in >test.out du solltest auf dos|windows-systemen nur die apostrophen oder doppelte anführungszeichen verwenden Quote Link to comment
kuehnlm 10 Posted August 2, 2004 Author Report Share Posted August 2, 2004 Schön - funktioniert auch so... NUR...dass die Zeile 65 nicht immer die mit den Services ist - wenn nämlich mehr Hotfixes installiert sind, dann steht die Zeile weiter unten... Und dass die Zeile 165 nicht immer die ist, die den Ausdruck "Network card" beinhaltet, da evtl. auf einigen Servern mehr Dienste installiert sind... Und nun?????? Quote Link to comment
kuehnlm 10 Posted August 3, 2004 Author Report Share Posted August 3, 2004 Hallo - niemand ne Idee... Quote Link to comment
real_tarantoga 11 Posted August 3, 2004 Report Share Posted August 3, 2004 find /n "Services" output.txt>find1.txtfind /n "Network Card" output.txt>find2.txt for /f "skip=2 tokens=1" %%g in (find1.txt) do set startline=%%g for /f "skip=2 tokens=1" %%g in (find2.txt) do set endline=%%g set startline=%startline:~1,-10% set /a endline=(%endline:~1,-8% - 1) echo Start: %startline% + Ende: %endline% sed -n "%startline%,%endline%p" <output.txt >finalout.txt notepad finalout.txt Quote Link to comment
kuehnlm 10 Posted August 3, 2004 Author Report Share Posted August 3, 2004 SUUUUUUUUPER DANKE Quote Link to comment
Flare 12 Posted August 3, 2004 Report Share Posted August 3, 2004 da weiss ich ja an wem ich mich demnächst wenden kann :) Quote Link to comment
gr@mlin 10 Posted August 3, 2004 Report Share Posted August 3, 2004 hi, hier noch mal in kurz: sed -e "1,/Services/d" -e "/Network Card/,/#/d" < datei.txt > services.txt gruss, gr@mlin Quote Link to comment
real_tarantoga 11 Posted August 3, 2004 Report Share Posted August 3, 2004 tja, jetzt wisst ihr, wen ihr fragen müsst :) ich hasse sed - werd den nie ganz verstehen :rolleyes: Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.