PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Optionen mit Anführungszeichen übergeben: -o "aus gabe name"



thenktor
31-01-2008, 17:17
Hallo
Um das optimierte Lancer Oggenc zu benutzen, will ich ein kurzes Skript schreiben, das oggenc.exe per wine startet und alle Optionen übergibt. Allerdings müssen auch die Anführungszeichen ankommen, z.B. -o "output name" -a "künstler name"...


#!/bin/sh
echo "Lancer oggenc via wine..."
echo "$*"
wine /home/thorsten/winec/oggenc.exe "$*"

jan61
31-01-2008, 19:16
Moin,

Du musst statt $* $@ nutzen (siehe "man bash"):

jan@jack:~/tmp> cat oggenc_start.sh
#!/bin/sh
/home/jan/tmp/t_arg.sh $*
/home/jan/tmp/t_arg.sh "$*"
/home/jan/tmp/t_arg.sh "$@"
jan@jack:~/tmp> cat t_arg.sh
#!/bin/bash
echo "Anzahl Parameter="$#
echo '$1='"$1"
echo '$2='"$2"
jan@jack:~/tmp> ./oggenc_start.sh -o "output name"
Anzahl Parameter=3
$1=-o
$2=output
Anzahl Parameter=1
$1=-o output name
$2=
Anzahl Parameter=2
$1=-o
$2=output name
Jan

thenktor
31-01-2008, 19:27
Danke

PS: Lustig, dass das Lancer Oggenc mit dem Umweg über wine trotzdem doppelt so schnell kodiert wie das native oggenc :D