Merci pour tous les commentaires , j'ai reussi à faire marcher le script finalement , j'ai désinstaller dash et mis bash , ce qui est étonnant c'est que le finger m'indiquait que bash était déjà installer . J'ai modifier un peu le script mais je n'ais pas touché à la fonction random vue que j'en ai besoin . Le shebang est bien en première ligne .
Le script pour ceux que ca peut servir ,
1.il cherche aléatoirement dans son répertoire un fichier *swf (si quelqu'un onnais un bon outil libre pour convertir du swf en format vidéo , pyvnc edit.py ne marche pas chez moi ) avec gnash en plein écran , une seule fois ,
2. vérifie que le processus est lancé (ici gnash ) si oui alors lis aléatoirement des .wav tant que gnash est ouvert . Peut servir dans un contexte d'art numérique et autre multimédia .
# execute un random dans l'interval(%) `ls *ogg | wc -l`
line=$(($RANDOM%`ls *wav | wc -l`))
# ajoute une ligne car nl compte à partir de 1
line=$((line + 1))
ls *wav | nl | while read a b
do
[ "$a" = "$line" ] && { /usr/bin/play "$b" ; }
done
done
# Merci , ca marche
Posté par eastwind☯ . En réponse au message script bash , OK sous ubuntu 7.10 mais KO sous ubuntu 8.04. Évalué à 2.
Le script pour ceux que ca peut servir ,
1.il cherche aléatoirement dans son répertoire un fichier *swf (si quelqu'un onnais un bon outil libre pour convertir du swf en format vidéo , pyvnc edit.py ne marche pas chez moi ) avec gnash en plein écran , une seule fois ,
2. vérifie que le processus est lancé (ici gnash ) si oui alors lis aléatoirement des .wav tant que gnash est ouvert . Peut servir dans un contexte d'art numérique et autre multimédia .
#!/bin/bash
set -xv
killall python
line=$(($RANDOM%`ls *.swf | wc -l`))
line=$(($line + 1))
ls *.swf | nl | if read a b
then
#[ "$a" = "$line" ] && { /usr/bin/gnash "$b" & }
[ "$a" = "$line" ] && { /usr/bin/gnash --once --fullscreen -r 1 "$b" & }
fi
SERVICE='gnash'
while ps ax | grep -v grep | grep $SERVICE > /dev/null
do
# execute un random dans l'interval(%) `ls *ogg | wc -l`
line=$(($RANDOM%`ls *wav | wc -l`))
# ajoute une ligne car nl compte à partir de 1
line=$((line + 1))
ls *wav | nl | while read a b
do
[ "$a" = "$line" ] && { /usr/bin/play "$b" ; }
done
done