Gå til innhold

Anbefalte innlegg

Sitter her og prøver meg på noe jeg ikke har så all verdens kjennskap til: Nemlig bash. Nå skal jeg kjøre et skript mot en samba-share hvor windows-brukerne har laget mange mappe- og filnavn med mellomrom i. Et nedkoket, typisk eksempel på det jeg lurer på:

file="moo/foo foo/bar.ext"
`dirname $file`

Hvordan skal jeg escape for at dirname skal forstå input og si at svaret er moo/foo foo/?

Lenke til kommentar
Videoannonse
Annonse
  • 4 uker senere...
  • 2 uker senere...

file="\"moo/foo foo/bar.ext\""

 

Det fungerer også. \ betyr her at det neste tegnet bare tolkes som et tegn uten funksjon.

 

Som du ser, er det mange utveier. ;)

 

BTW:

 

i stedet for `dirname $file` kan (og bør) du bruke $(dirname $file)

Endret av meastp
Lenke til kommentar

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...