petterg Skrevet 10. august 2004 Del Skrevet 10. august 2004 Skulle hatt et skript til å utføre noen operasjoner på enkelte utvalgte filer som det får som parametere. Funker i seg selv greit, helt til det kommer en fil med [space] i filnavnet. Med escaping eller quoting kan jeg få parameterene inn i scriptet, men det stopper opp i en for-loop: starter scriptet med: # ./script fil\ navn\ 1 fil\ navn\ 2 fil\ navn\ 3 eller # ./script "fil navn 1" "fil navn 2" "fil navn 3" #!/bin/bash echo $1 # printer 'fil navn 1' echo $2 # printer 'fil navn 2' for fil in $@ do echo fil done # for løkka printer: #+fil #+navn #+1 #+fil #+navn #+2 #+fil #+navn #+3 Saken er at det kan tenkes det en gang blir mer enn 9 filer, slik at jeg må bruke $@ for å hente inn parameterene. Hva er trikset for å få forløkka til å skjønne hvilke ord som hører sammen? Lenke til kommentar
petterg Skrevet 12. august 2004 Forfatter Del Skrevet 12. august 2004 Jeg kan svare på mitt eget sp.mål. Det kan tenkes å være av interesse for de som liker å se at jeg diskuterer med meg selv... og eventuelt andre som lurer på samme sak http://www.linux.ie/old-list/24988.html viser løsningen. Den får riktig nok input fra en fontliste, men endringen til filliste er minimal. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå