Gå til innhold

[Bash]Sortering av tekst i et dokument


Anbefalte innlegg

Skrevet

Jeg vil lage et script som sorterer ut tekst fra en tekstfil, ved at jeg skriver inn starten på teksten og får ut hele teksten

 

På kommandolinjen skriver jeg:

 

cat /home/rakkenes/Desktop/kord.txt | egrep -o 'N 60[^(]*' 

og får ut:

 

	
N 60.63687134	E 6.80012894	
N 60.86593246	E 10.97233391	
N 60.42571259	E 5.30402708	
N 60.85412216	E 10.99629116	
N 60.46295547	E 5.29912233	
N 60.36135864	E 5.34924746	
N 60.45685577	E 5.30064058	
N 60.45856094	E 5.32399988	
N 60.88550568	E 10.93854618	
N 60.88637543	E 10.93950176	
N 60.37520599	E 5.33575058	
N 60.39181900	E 5.31480265	
N 60.39845657	E 5.31036615	
N 60.42807770	E 5.29357386	
N 60.80464935	E 11.06105518	
.
.
.

 

I bash-skriptet har jeg følgende:

#!/bin/bash


for i in $@
do
 echo `cat /home/user/Desktop/kord.txt | egrep -o 'N $i[^(]*'`
done

 

 

Jeg får ingen utskrift med "./liste-sort.sh 60" ... Hva gjør jeg feil?

Videoannonse
Annonse
Skrevet

I bash-skriptet har jeg følgende:

#!/bin/bash


for i in $@
do
 echo `cat /home/user/Desktop/kord.txt | egrep -o 'N $i[^(]*'`
done

 

Variablene blir ikke interpolert innad ' (enkelquote). Du vil muligens bruke doublequote (") (og for guds skyld, bruk $() -- MYE enklere å ha med å gjøre).

  • Liker 1

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...