Veröffentlicht 7. Januar 200322 j Hallo, kann es sein, dass der Befehl nur eine bestimmte Zeichenanzahl zurückliefert - nämlich 1024 Zeichen?! Ich bearbeite nämlich eine Datei, in der jede Zeile mehr als 3000 Zeichen hat - und wenn ich find "abc" d:\daten.dat > d:\output.dat ausführe, bekomme ich exakt die ersten 1024 Zeichen je gefundener Zeile zurück... Wie kann man das umgehen?! Wäre äußerst schade, wenn's da keine Möglichkeit gäbe:( Grüße, Technician
7. Januar 200322 j Hi, hab mal gegoogelt und diese Links hier gefunden. Leider hab ich hier nur beschränkten Internetzugriff und kann mir keinen von denen Ankucken, vielleicht helfen Sie dir ja. Vor allem der 7. Link hört sich hilfreich an. Gruß Guybrush
7. Januar 200322 j Hi Guybrush, war leider auch nix dabei Hab schon gegoogelt nach +dos+find+1024, aber das hat mir auch nicht geholfen Gruß, Technician
7. Januar 200322 j ich hab mal gehört das dos eine zeichenbegrenzung in der zeile hat. irgendwann bekommt es probleme wurde mir gesagt. kann sein das sie bei 1024 liegt. bin mir aber nicht sicher ob das stimmt.
7. Januar 200322 j hab mal eine Seite die den Befehl FIND genau beschreibt http://home.t-online.de/home/manfred.treutner/dosf.htm musst etws nach unten scrollen. Hab den Befehl selbst mal getestet! Habe eine Datei "test.txt" erstelt mit 150.000 Zeichen "abc" teilweise in Folge, teilweise mit <br> 3277 Zeichen auf einer Zeile Im Dosfenster Befehlseingabe C:\>find "abc" test.txt > test1.txt In der Datei "test1.txt stand dann 1:1 übernommen: ---------- test.txt abcabcabcabcabcabcabca.....usw. alle 150.000 Zeichen. Also KEIN Begrenzung von 1024 zeichen
7. Januar 200322 j Welches Windows-Shell wird verwendet, command.com oder cmd.exe? Koennte ja durchaus sein, dass es nicht am find selbst liegt.
7. Januar 200322 j Originally posted by hades Welches Windows-Shell wird verwendet, command.com oder cmd.exe? Koennte ja durchaus sein, dass es nicht am find selbst liegt. Ich meine mich zu erinnern, dass es unter Umstaenden Probleme mit der Groesse der Ein- und Ausgabepuffer der Shell gibt. D.h. Find liefert zwar den vollstaendigen String zurueck, dieser wird von der Dosshell (Umleitung der Ausgabe) auf 1024 Zeichen gekuerzt. Nic
8. Januar 200322 j Originally posted by GlowingHeart Habe eine Datei "test.txt" erstelt mit 150.000 Zeichen "abc" teilweise in Folge, teilweise mit <br> 3277 Zeichen auf einer Zeile Im Dosfenster Befehlseingabe C:\>find "abc" test.txt > test1.txt In der Datei "test1.txt stand dann 1:1 übernommen: ---------- test.txt abcabcabcabcabcabcabca.....usw. alle 150.000 Zeichen. Also KEIN Begrenzung von 1024 zeichen komisch :confused: Bei mir hört der in der Ausgabezeile nach exakt 1024 Zeichen auf:(
8. Januar 200322 j Originally posted by hades Welches Windows-Shell wird verwendet, command.com oder cmd.exe? Koennte ja durchaus sein, dass es nicht am find selbst liegt. Woran kann ich feststellen, welche Shell verwendet wird bzw. ggf. umstellen?! (ich gehöre zu den Leuten, die zuerst Windows und dann DOS kennenlernten... also, ich kenn mich mit DOS nur äußerst wenig aus )
8. Januar 200322 j Ich habe auch schon ausprobiert TYPE d:\daten.dat | FIND "abc" > d:\output.dat gleiches Problem...
8. Januar 200322 j Originally posted by Technician Woran kann ich feststellen, welche Shell verwendet wird bzw. ggf. umstellen?! (ich gehöre zu den Leuten, die zuerst Windows und dann DOS kennenlernten... also, ich kenn mich mit DOS nur äußerst wenig aus ) Unter windows 2000 wird standardmäßig cmd.exe gestartet. Feststellen kannst du das indem du start->programme->zubehöhr->eingabeaufforderung und dort rechtsklick->Eigenschaften machst. An die command.com kommst du z.B. über Ausführen und command. MfG
8. Januar 200322 j Originally posted by DanielH Unter windows 2000 wird standardmäßig cmd.exe gestartet. Feststellen kannst du das indem du start->programme->zubehöhr->eingabeaufforderung und dort rechtsklick->Eigenschaften machst. An die command.com kommst du z.B. über Ausführen und command. MfG Okay. Ich bin zwar unter WinNT, aber da geht das natürlich auch. Jedenfalls, ich erhalte in beiden Fällen nicht mehr als 1024 Zeichen zurück. @GlowingHeart Unter welchem Betriebssystem hast du das mit den mehr als 1024 Zeichen geschafft?
8. Januar 200322 j Originally posted by Technician @GlowingHeart Unter welchem Betriebssystem hast du das mit den mehr als 1024 Zeichen geschafft? Benutze Win98SE
9. Januar 200322 j Originally posted by GlowingHeart Benutze Win98SE okay. Das hilft hier natürlich nicht weiter... bleibt mir also nix anderes übrig, als über den Weg "UNIX" zu gehen:p
9. Januar 200322 j Originally posted by Technician okay. Das hilft hier natürlich nicht weiter... bleibt mir also nix anderes übrig, als über den Weg "UNIX" zu gehen:p Denk aber dran, dass das Unix find mit dem Dos-Find nichts viel gemeinsam hat (eigentlich nichts). Der entsprechende Befehl ist grep. Nic
9. Januar 200322 j Originally posted by nic_power Denk aber dran, dass das Unix find mit dem Dos-Find nichts viel gemeinsam hat (eigentlich nichts). Der entsprechende Befehl ist grep. Nic Das UNIX-Script hatte ich schon vor längerer Zeit geschrieben. Nur jetzt wollte ich eben auch eine Möglichkeit unter DOS haben - um komplett alles unter NT starten zu können... Übrigens: ich mach das sowieso unter UNIX nicht per grep, sondern per sed (da ich nicht nur einfach die Zeilen brauche, die das Suchwort enthalten - nein, das Suchwort muss an einer bestimmten Stelle stehen...). Unter NT hätte ich eben zusätzlich noch mal die von find ausgegebenen Zeilen mit nem kleinen Progrämmchen überprüfen müssen.
9. Januar 200322 j Originally posted by Technician Das UNIX-Script hatte ich schon vor längerer Zeit geschrieben. Nur jetzt wollte ich eben auch eine Möglichkeit unter DOS haben - um komplett alles unter NT starten zu können... Übrigens: ich mach das sowieso unter UNIX nicht per grep, sondern per sed (da ich nicht nur einfach die Zeilen brauche, die das Suchwort enthalten - nein, das Suchwort muss an einer bestimmten Stelle stehen...). Je nach Unix geht das auch mit grep ("grep -E" bzw. "egrep"), aber sed ist wahrscheinlich schneller. Nic
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.