PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Parameterübergabe



ThorstenHirsch
01-09-2004, 16:59
Servus, ich hab ein Problemchen mit Parametern (Dateinamen), die Leerzeichen enthalten. Wenn ich "mplayer Hansi\ Müllers\ Urlaubsvideos" aufrufe, funktioniert alles korrekt, da "\ " als Leerzeichen interpretiert wird.

Jetzt hab ich aber ein winziges Skript geschrieben:

#!/bin/sh
mplayer -ao alsa -ac hwac3 $*
und wenn ich jetzt "mplayerac3 Hansi\ Müllers\ Urlaubsvideos" aufrufe, dann will mplayer 3 Dateien abspielen: Hansi, Müllers und Urlaubsvideos.

Wie kann ich den Dateinamen korrekt in meinem Skript übergeben?

fork
01-09-2004, 17:21
Setze mal IFS auf ein Zeichen das eher nicht im Dateinamen vorkommt, dann arbeitet der Befehl.

IFS='µ'

Dann werden Leerzeichen auch nicht unerwünschterweise als Feldtrenner interpretiert.

ThorstenHirsch
01-09-2004, 18:47
Danke, klappt!

fork
01-09-2004, 22:09
2. Moeglichkeit ist "$@" statt $* zu schreiben Damit wird zu "$1" "$2" ... expandiert