Eu acredito que o seu script não pode funcionar. Corrija os erros abaixo:
1 while true
2 do
3 for f in $FILES
^––SC1009 The mentioned parser error was in this for loop.
4 do
5 filename=$(basename "$f")
6 extension="${filename##*.})"
7
8 #shopt -s nocasematch
9
10 if [ $extension == "mp4" ] || [ $extension == "mov" ]
^––SC1049 Did you forget the 'then' for this 'if'?
^––SC1073 Couldn't parse this if expression.
11 mplayer $filename -fs
12
13 elif [ $extension == "jpg" ]
^––SC1050 Expected 'then'.
^––SC1072 Expected "#". Fix any mentioned problems and try again.
14 timeout 5 /usr/bin/eog --fullscreen $filename
15
16 fi
17
18 done
19 done
Eu não tenho nada melhorado ou adaptado a este script. Agora funciona tecnicamente. Se seu código está logicamente correto, você precisa decidir.
Por exemplo:
while true; do
for f in $FILES; do
filename=$(basename "$f")
extension="${filename##*.}"
if [ "$extension" == "mp4" ] || [ "$extension" == "mov" ]; then
mplayer "$filename" -fs
elif [ "$extension" == "jpg" ]; then
timeout 5 /usr/bin/eog --fullscreen "$filename"
fi
done
done