Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/04/2017, à 20:18

Seidel

Amelioration du script

Bonjour à tous, voilà je débute un peu dans le bash et j'ai fait un petit script qui tourne avec un crontab voir si tout fonctionne bien, mais je suis persuadé qu'il est possible de l'améliorer mais je ne vois pas comment...

Quelqu'un aurait une idée ou une piste ? Merci d'avance !!

#!/bin/bash
if [[ "$(screen -ls | grep dash_button)" == "" ]]
then
screen -dmS dash_button sudo node /home/pi/Dash/js/dash1.js
echo "Le script ddu dash button redemarre"
fi
if [[ "$(screen -ls | grep dash_button2)" == "" ]]
then
screen -dmS dash_button2 sudo node /home/pi/Dash/js/dash2.js
echo "Le script ddu dash button redemarre"
fi
if [[ "$(screen -ls | grep dash_button3)" == "" ]]
then
screen -dmS dash_button3 sudo node /home/pi/Dash/js/dash3.js
echo "Le script ddu dash button redemarre"
fi
if [[ "$(screen -ls | grep dash_button4)" == "" ]]
then
screen -dmS dash_button4 sudo node /home/pi/Dash/js/dash4.js
echo "Le script ddu dash button redemarre"
fi
if [[ "$(screen -ls | grep dash_button5)" == "" ]]
then
screen -dmS dash_button5 sudo node /home/pi/Dash/js/dash5.js
echo "Le script ddu dash button redemarre"
fi
if [[ "$(screen -ls | grep dash_button6)" == "" ]]
then
screen -dmS dash_button6 sudo node /home/pi/Dash/js/dash6.js
echo "Le script ddu dash button redemarre"
fi
if [[ "$(screen -ls | grep dash_button7)" == "" ]]
then
screen -dmS dash_button7 sudo node /home/pi/Dash/js/dash7.js
echo "Le script ddu dash button redemarre"
fi

Hors ligne

#2 Le 12/04/2017, à 20:28

Watael

Re : Amelioration du script

salut,

tu pourrais faire une boucle for :

for i in dash_button{'',{2..7}}; do screen -ls | grep -q "$i" || screen -dmS ...js/dash$((++n)).js; done

à tester...


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 12/04/2017, à 20:59

Seidel

Re : Amelioration du script

Merci bien !

Bah j'ai adapté le script mais ça n'a pas l'air de bien fonctionner...

for i in dash_button{'',{2..7}}; do screen -ls | grep -q "$i" || screen -dmS dash_button$((++n)) sudo node /home/pi/Dash/js/dash$((++n)).js; done

Quand je fais un screen -ls

There are screens on:
        4314.dash_button5       (12/04/2017 20:59:02)   (Detached)
        4298.dash_button3       (12/04/2017 20:59:02)   (Detached)
        4282.dash_button1       (12/04/2017 20:59:02)   (Detached)
        4066.dash_button5       (12/04/2017 20:58:18)   (Detached)
        4050.dash_button3       (12/04/2017 20:58:18)   (Detached)
        4034.dash_button1       (12/04/2017 20:58:18)   (Detached)
        3940.dash_button5       (12/04/2017 20:58:02)   (Detached)
        3924.dash_button3       (12/04/2017 20:58:01)   (Detached)
        3908.dash_button1       (12/04/2017 20:58:01)   (Detached)
        3779.dash_button5       (12/04/2017 20:57:41)   (Detached)
        3763.dash_button3       (12/04/2017 20:57:41)   (Detached)
        3749.dash_button1       (12/04/2017 20:57:41)   (Detached)
        540.Ping_Bluetooth      (12/04/2017 05:00:52)   (Detached)
13 Sockets in /var/run/screen/S-pi.

Dernière modification par Seidel (Le 12/04/2017, à 21:00)

Hors ligne

#4 Le 12/04/2017, à 21:13

Watael

Re : Amelioration du script

oops, la regex n'est pas bonne pour le premier cas cherché, parce qu'il correspond à tous les autres.

grep -q "${i}[[:blank:]]"

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#5 Le 12/04/2017, à 23:52

Hizoka

Re : Amelioration du script

je ne connaissais pas $((++n)), je connaissais $((n++)).

et hop ! encore une chose d'apprise smile


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#6 Le 13/04/2017, à 01:57

Seidel

Re : Amelioration du script

Parfait ça marche nikel, merci beaucoup !! big_smile

Hors ligne

#7 Le 13/04/2017, à 08:52

Hizoka

Re : Amelioration du script

Si c'est bon ajoute un [Résolu] dans ton titre


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne