Gå til innhold

Shell script (wrapper) vorbiscomment


Anbefalte innlegg

Heisann

Prøver å lage et script som wrapper vorbiscomment da denne ikke støtter wildcards. Så for å kunne endre flere filer på en gang har jeg skrevet følgende:

 

#!/bin/sh

 

if [ $# -ne 1 ]

then

echo "Wrong number of arguments"

echo "Aborting"

exit

fi

 

 

for file in *.ogg;

do

vorbis_cmd="/usr/local/bin/vorbiscomment -a -t GENRE=$1 \"$file\""

echo $vorbis_cmd

$vorbis_cmd

done

 

Hvis filnavnet inneholder [space] vil vorbiscomment alltid klage. Det som er litt snodig er at hvis jeg kjører den kommandoen som blir skrevet ut direkte i promptet fungerer det bra.

Hva er forskjellen på å kjøre kommandoen fra scriptet og fra promptet?

Alle svar mottas med takk.

 

Smeg out...

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

Endre $1 til "$1" tror jeg skal fungere...

 

Forskjellen er at fra promptet så vil et argument med mellomrom i f,x "hei og hopp.ogg" håndteres som et argument. I et script, så vil dette argumentet skrives ut uten anførselstegn. Og dermed vil det oppleves fra kommandoen i scriptet som tre separate argument. Ved å sette "" rundt variabelnavnet, så vil det fortsatt håndteres som ett argument.

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...