TobbeT skrev:Det kommer direkt jag har skrivit ./.radio i terminalen och tryckt enter. Verkar gå i en loop liksom, samma meddelande upprepas tills jag trycker Ctrl+C. Får inte upp valen av kanaler över huvudtaget.
Då måste
select-raden hoppas över av någon anledning. Antagligen sätter inte
set-raden några skriptargument trots att den borde göra det. Varför den inte gör det kan man verkligen fråga sig.
axel112 skrev:Samma problem för mig.
Kör du också linuxmint?
axel112 skrev:bash GNU bash, version 3.2.25(1)-release (i486-pc-linux-gnu)
sed GNU sed version 4.1.5
TobbeT skrev:Kod: Markera allt
GNU bash, version 3.2.39(1)-release (i486-pc-linux-gnu)
Copyright (C) 2007 Free Software Foundation, Inc.
GNU sed version 4.1.5
Copyright (C) 2003 Free Software Foundation, Inc.
Jag har nu själv provat med de versionerna, så det är inte där skon klämmer. Jag har även försökt att boota från 8.04-live-cd:n för att utesluta att jag har gjort några konstiga inställningar någonstans. Men även då fungerade skriptet som det skulle. Det här blev med andra ord väldigt spännande... jag har ännu ingen som helst aning om vad problemet kan tänkas vara.
Jag har fixat en debug-version av skriptet som skriver ut vad som händer efter hand:
Kod: Markera allt
#!/bin/bash
echo === STARTARGUMENT ===
${1+echo "[$@]"}
echo === KANALNAMN ===
sed -n "/^#/d;s/\s\s\+.*//p" <"$0"
IFS=$'\n'; set -- $(sed -n "/^#/d;s/\s\s\+.*//p" <"$0"); unset IFS
echo === SKRIPTARGUMENT ===
for i; do echo "[$i]"; done
PS3="Välj kanal (ctrl-c avslutar): "; select REPLY; do ${REPLY:+break}; done
echo "REPLY=[$REPLY]"
echo === KANALADRESS ===
sed -n "/^$REPLY\s\s\+/{s///p;q}" <"$0"
echo exec "$0" $(sed -n "/^$REPLY\s\s\+/{s///p;q}" <"$0")
exit
East FM mms://www.eastfm.se/eastfm
HardFM http://files.hard.fm/192.pls
RadioSeven http://www.radioseven.se/128.pls
Studio 107.5 mms://live.alleredge.com/AE_StudioSE_Mid
107.1 Vinyl mms://live.alleredge.com/AE_Vinyl_Mid
The Voice mms://live.alleredge.com/AE_TheVoiceSE_Mid
Rockklassiker mms://live.alleredge.com/AE_Rockklassiker_Mid
Mix MegaPol mms://live.alleredge.com/AE_MixMegapol_Mid
Det här händer när jag kör debug-skriptet:
Kod: Markera allt
$ ./.radio
=== STARTARGUMENT ===
=== KANALNAMN ===
East FM
HardFM
RadioSeven
Studio 107.5
107.1 Vinyl
The Voice
Rockklassiker
Mix MegaPol
=== SKRIPTARGUMENT ===
[East FM]
[HardFM]
[RadioSeven]
[Studio 107.5]
[107.1 Vinyl]
[The Voice]
[Rockklassiker]
[Mix MegaPol]
1) East FM 3) RadioSeven 5) 107.1 Vinyl 7) Rockklassiker
2) HardFM 4) Studio 107.5 6) The Voice 8) Mix MegaPol
Välj kanal (ctrl-c avslutar): 5
REPLY=[107.1 Vinyl]
=== KANALADRESS ===
mms://live.alleredge.com/AE_Vinyl_Mid
exec ./.radio mms://live.alleredge.com/AE_Vinyl_Mid
Blir det annorlunda för er?