[BASH] Hoe bestand per regel uitsplitsen?

Pagina: 1
Acties:

  • arnova
  • Registratie: Augustus 2001
  • Laatst online: 11:16

arnova

weet veel, maar niet alles

Topicstarter
Hoe kan het beste een textbestand per regel uitsplitsen? Kan dit met BASH zelf doen of moet ik hier een omweg met AWK voor gebruiken?

ESP PV-Boiler Controller https://github.com/arnova/pvboiler


  • BitProcessor
  • Registratie: Februari 2001
  • Laatst online: 30-08 23:59
Op zondag 28 juli 2002 15:52 schreef master_artech het volgende:
Hoe kan het beste een textbestand per regel uitsplitsen? Kan dit met BASH zelf doen of moet ik hier een omweg met AWK voor gebruiken?
Het is in ieder geval mogelijk om lijn per lijn te gaan "bekijken".

BV. :
code:
1
2
3
4
5
6
7
8
9
10
file=$1

aant_lijnen=0         #telvariabele

while read lijn ; do     #de lijn wordt mbv read opgeslaan in de var lijn

    let aant_lijnen+=1
    echo $aant_lijnen $lijn

done < $file        #dit zorgt voor het inlezen per lijn


Wat doet dit voorbeeld ?
  • Het neemt de eerste parameter die je meegeeft aan je script als naam voor een invoerfile (file=$1)
  • Het leest vervolgens dit bestand lijn voor lijn in, en print elke regel direct terug op scherm, maar met het regelnummer er voor
te bekijken documentatie :
  • man read
  • man bash (searchen naar while)
  • man let (zit misschien ook in bash, geen idee)
Ik zeg gewoon dat het mogelijk is hé, afhankelijk van wat je met die apparte lijnen wil gaan doen, is je doel misschien makkelijker te realiseren in AWK. Ik zou de voor -en nadelen van beiden eens goed bekijken als ik jouw was.

"I think there is a world market for maybe five computers" - Thomas Watson, chairman of IBM, 1943