Toon posts:

Bewerking grote (enorme) tekstfiles

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb nogal forse tekstbestanden (~1 GB) waar ik een aantal regels uit wil verwijderen. Het editen van zo'n is geen succes. Ik heb reeds aantal editors geprobeerd die op GoT geadviseerd worden voor grote files (Crimson/UltraEdit), maar ze lopen allemaal stuk op de omvang van de tekstfiles.

De tekstfile bevat de output van een SQL statement, maar er zit een hoop regels met tekstopmaak tussen (streepjes, kolomnamen, ed). Die wil ik er dus uit hebben. Is er een tooltje waarmee je regels die voldoen aan bepaalde criteria (beginnen met '-') kunt verwijderen uit tekstfiles zonder dat je de file daadwerkelijk hoeft te openen?

  • Rukapul
  • Registratie: Februari 2000
  • Laatst online: 13:22
Ik heb zulke files wel eens met VIM onder Windows geedit. Ging wel langzaam, maar kwam omdat ik de opties om niet de hele file te bufferen oid niet direct kon vinden.

Jouw probleem is echter eenvoudig via commandline utils en pipes op te lossen, bijvoorbeeld met de wat krachtigere grep utilities (die je typisch op unix achtigen standaard aantreft). Misschien dat die van Cygwin in staat is om het te doen onder windows en anders even googlen.

  • M.I.G.
  • Registratie: Augustus 2000
  • Laatst online: 06-01 13:48

M.I.G.

[like an alien]

Wat ik ook wel eens gebruikte was programma Jsplit. Die splitte bestanden keihard op een aantal bytes. Misschien kan je hiermee de bestanden wat kleiner maken? En ze daarna weer aan elkaar plakken?

Ik weet niet of het handig is. Maybe.

http://www.spadixbd.com/freetools/jsplit.htm

http://www.spadixbd.com/JSplit/index.htm

Deze kan groter aan.

[ Voor 12% gewijzigd door M.I.G. op 11-08-2004 11:05 ]


  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10-2025
wat natuurlijk ook kan is je sql commando aanpassen, en zorgen dat de regels niet in dat bestand komen.

This message was sent on 100% recyclable electrons.


  • Roko
  • Registratie: November 2000
  • Niet online
Mits je genoeg RAM in je PC hebt kun je dit met TextPad doen

  • Zpottr
  • Registratie: Mei 2000
  • Niet online

Zpottr

Henk

Zoals Rakupul zegt: gebruik grep onder cygwin (of bv. een CD-linux distro als Knoppix). Daarmee kun je alle regels die niet beginnen met "-" met één commando in een andere file stoppen.

Zoef


  • blackd
  • Registratie: Februari 2001
  • Niet online
Naast grep onder cygwin zou je deze ook kunnen proberen: http://unxutils.sourceforge.net/

9000Wp o/w SolarEdge SE6K - Panasonic 5kW bi-bloc - gasloos sinds 17-7-2023


Verwijderd

onder een unix met cat en grep :) die bufferen vrijwel niets (grep buffert per regel)

Verwijderd

Topicstarter
Mensen, bedankt! Danzij de grep tip heb ik de oplossing gevonden.

Iedere geldige regel begint met 'HY2', ik gebruikt nu het DOS-commande findstr:
findstr /B HY2 av2.txt >clean_av2.txt

Commando zoekt 'HY2' aan het begin van een regel in bestand av2.txt en schrijft die weg naar file clean_av2.txt :)
Pagina: 1