Partage
  • Partager sur Facebook
  • Partager sur Twitter

probleme script bash

Sujet résolu
Anonyme
    29 mars 2015 à 17:46:45

    bonjour, je suis en train d'écrire un jeu en bash, j'ai écris un petit morpion a 2 joueurs, qui fonctionne parfaitement. J'ai ensuite décidé de crée une IA. je ne dis pas que ma solution est la bonne mais c pas grave, c'est comme ça que l'on apprend. Au bout de beaucoup de ligne, j'ai des erreur qui apparaissent, sans comprendre vraiment pourquoi donc c'est pour ça que je m'adresse a vous.

    je n'ose pas vous metre le script complet, vu sa longueur, mais si vous en avez besoin, n'hésitez pas.

    • Partager sur Facebook
    • Partager sur Twitter
      29 mars 2015 à 18:50:18

      Lignes 307,376 et 448, une variable sans affectation.

      Et sinon c'est quoi l'erreur ?

      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        29 mars 2015 à 20:21:02

        les variables sans affectation, c'est normal, je veux quelles est un contenu vide.

        regarde le RANDOM du milieu, il 'est pas de la même couleur, et dans la suite du code, yen a encor d'autre, jusqu'au moment ou toute la suite du code reste gris, sans reconnaissance de variable, de fonction ou de texte. j'ai regarder, et le code est similaire, sauf les variables qui changent.

        • Partager sur Facebook
        • Partager sur Twitter
          29 mars 2015 à 20:27:15

          Tu peux le mettre sur un pastebin ?

          Parce que travailler avec un screen c'est pas la joie ...

          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            29 mars 2015 à 20:44:42

            tu veux le code complet?

            • Partager sur Facebook
            • Partager sur Twitter
              29 mars 2015 à 20:54:25

              Oui, j'ai les numéros de ligne qui posent problème de toutes façons.
              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                29 mars 2015 à 21:01:34

                #optimisation:
                #				-reduction des aléatoires
                if [[ $scor1 = 2 ]] && [[ $tour = 0 ]]; then
                	if [[ $a != '   ' ]]; then
                		a=' 0 '
                		tour=1
                	fi
                	if [[ $b != '   ' ]]; then
                		b=' 0 '
                		tour=1
                	fi
                	if [[ $c != '   ' ]]; then
                		c=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor2 = 2 ]] && [[ $tour = 0 ]]; then
                	if [[ $c != '   ' ]]; then
                		c=' 0 '
                		tour=1
                	fi
                	if [[ $d != '   ' ]]; then
                		d=' 0 '
                		tour=1
                	fi
                	if [[ $e != '   ' ]]; then
                		e=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor3 = 2 ]] && [[ $tour = 0 ]]; then
                	if [[ $f != '   ' ]]; then
                		f=' 0 '
                		tour=1
                	fi
                	if [[ $g != '   ' ]]; then
                		g=' 0 '
                		tour=1
                	fi
                	if [[ $h != '   ' ]]; then
                		h=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor4 = 2 ]] && [[ $tour = 0 ]]; then
                	if [[ $a != '   ' ]]; then
                		a=' 0 '
                		tour=1
                	fi
                	if [[ $d != '   ' ]]; then
                		d=' 0 '
                		tour=1
                	fi
                	if [[ $g != '   ' ]]; then
                		g=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor5 = 2 ]] && [[ $tour = 0 ]]; then
                	if [[ $b != '   ' ]]; then
                		b=' 0 '
                		tour=1
                	fi
                	if [[ $e != '   ' ]]; then
                		e=' 0 '
                		tour=1
                	fi
                	if [[ $h != '   ' ]]; then
                		h=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor6 = 2 ]] && [[ $tour = 0 ]]; then
                	if [[ $c != '   ' ]]; then
                		c=' 0 '
                		tour=1
                	fi
                	if [[ $f != '   ' ]]; then
                		f=' 0 '
                		tour=1
                	fi
                	if [[ $i != '   ' ]]; then
                		i=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor7 = 2 ]] && [[ $tour = 0 ]]; then
                	if [[ $a != '   ' ]]; then
                		a=' 0 '
                		tour=1
                	fi
                	if [[ $e != '   ' ]]; then
                		e=' 0 '
                		tour=1
                	fi
                	if [[ $i != '   ' ]]; then
                		i=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor8 = 2 ]] && [[ $tour = 0 ]]; then
                	if [[ $c != '   ' ]]; then
                		c=' 0 '
                		tour=1
                	fi
                	if [[ $e != '   ' ]]; then
                		e=' 0 '
                		tour=1
                	fi
                	if [[ $g != '   ' ]]; then
                		g=' 0 '
                		tour=1
                	fi
                fi
                #scor total de la ligne egal a -2 (joueur 2 a l'avantage).
                if [[ $scor1 = -2 ]] && [[ $tour = 0 ]]; then
                	if [[ $a != '   ' ]]; then
                		a=' 0 '
                		tour=1
                	fi
                	if [[ $b != '   ' ]]; then
                		b=' 0 '
                		tour=1
                	fi
                	if [[ $c != '   ' ]]; then
                		c=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor2 = -2 ]] && [[ $tour = 0 ]]; then
                	if [[ $c != '   ' ]]; then
                		c=' 0 '
                		tour=1
                	fi
                	if [[ $d != '   ' ]]; then
                		d=' 0 '
                		tour=1
                	fi
                	if [[ $e != '   ' ]]; then
                		e=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor3 = -2 ]] && [[ $tour = 0 ]]; then
                	if [[ $f != '   ' ]]; then
                		f=' 0 '
                		tour=1
                	fi
                	if [[ $g != '   ' ]]; then
                		g=' 0 '
                		tour=1
                	fi
                	if [[ $h != '   ' ]]; then
                		h=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor4 = -2 ]] && [[ $tour = 0 ]]; then
                	if [[ $a != '   ' ]]; then
                		a=' 0 '
                		tour=1
                	fi
                	if [[ $d != '   ' ]]; then
                		d=' 0 '
                		tour=1
                	fi
                	if [[ $g != '   ' ]]; then
                		g=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor5 = -2 ]] && [[ $tour = 0 ]]; then
                	if [[ $b != '   ' ]]; then
                		b=' 0 '
                		tour=1
                	fi
                	if [[ $e != '   ' ]]; then
                		e=' 0 '
                		tour=1
                	fi
                	if [[ $h != '   ' ]]; then
                		h=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor6 = -2 ]] && [[ $tour = 0 ]]; then
                	if [[ $c != '   ' ]]; then
                		c=' 0 '
                		tour=1
                	fi
                	if [[ $f != '   ' ]]; then
                		f=' 0 '
                		tour=1
                	fi
                	if [[ $i != '   ' ]]; then
                		i=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor7 = -2 ]] && [[ $tour = 0 ]]; then
                	if [[ $a != '   ' ]]; then
                		a=' 0 '
                		tour=1
                	fi
                	if [[ $e != '   ' ]]; then
                		e=' 0 '
                		tour=1
                	fi
                	if [[ $i != '   ' ]]; then
                		i=' 0 '
                		tour=1
                	fi
                fi
                if [[ $scor8 = -2 ]] && [[ $tour = 0 ]]; then
                	if [[ $c != '   ' ]]; then
                		c=' 0 '
                		tour=1
                	fi
                	if [[ $e != '   ' ]]; then
                		e=' 0 '
                		tour=1
                	fi
                	if [[ $g != '   ' ]]; then
                		g=' 0 '
                		tour=1
                	fi
                fi
                #scor1
                if [[ $scor1 = 1 ]] && [[ $tour = 0 ]]; then
                	if [[ $a = ' X ' ]]; then
                		if [[ $c = '   ' ]]; then
                			c=' 0 '
                			tour=1
                		elif [[ $b = '   ' ]]
                			b=' 0 '
                			tour=1
                		else
                			varend=
                			while [[ -z varend ]]; do
                				var=$(($RANDOM*10/32767))
                				case $var in
                								"1")
                									if [[ $a = '   ' ]]; then
                										varend=1 tour=1
                										a=' 0 '
                									fi
                									;;
                								"2")
                									if [[ $b = '   ' ]]; then
                										varend=1 tour=1
                										b=' 0 '
                									fi
                									;;
                								"3")
                									if [[ $c = '   ' ]]; then
                										varend=1 tour=1
                										c=' 0 '
                									fi
                									;;
                								"4")
                									if [[ $d = '   ' ]]; then
                										varend=1 tour=1
                										d=' 0 '
                									fi
                									;;
                								"5")
                									if [[ $e = '   ' ]]; then
                										varend=1 tour=1
                										e=' 0 '
                									fi
                									;;
                								"6")
                									if [[ $f = '   ' ]]; then
                										varend=1 tour=1
                										f=' 0 '
                									fi
                									;;
                								"7")
                									if [[ $g = '   ' ]]; then
                										varend=1 tour=1
                										g=' 0 '
                									fi
                									;;
                								"8")
                									if [[ $h = '   ' ]]; then
                										varend=1 tour=1
                										h=' 0 '
                									fi
                									;;
                								"9")
                									if [[ $i = '   ' ]]; then
                										varend=1 tour=1
                										i=' 0 '
                									fi
                				esac
                			done
                		fi
                	fi
                	if [[ $b = ' X ' ]]; then
                		if [[ $a = '   ' ]]; then
                			a=' 0 '
                			tour=1
                		elif [[ $c = '   ' ]]
                			c=' 0 '
                			tour=1
                		else
                			varend=
                			while [[ -z varend ]]; do
                				var=$(($RANDOM*10/32767))
                				case $var in
                								"1")
                									if [[ $a = '   ' ]]; then
                										varend=1 tour=1
                										a=' 0 '
                									fi
                									;;
                								"2")
                									if [[ $b = '   ' ]]; then
                										varend=1 tour=1
                										b=' 0 '
                									fi
                									;;
                								"3")
                									if [[ $c = '   ' ]]; then
                										varend=1 tour=1
                										c=' 0 '
                									fi
                									;;
                								"4")
                									if [[ $d = '   ' ]]; then
                										varend=1 tour=1
                										d=' 0 '
                									fi
                									;;
                								"5")
                									if [[ $e = '   ' ]]; then
                										varend=1 tour=1
                										e=' 0 '
                									fi
                									;;
                								"6")
                									if [[ $f = '   ' ]]; then
                										varend=1 tour=1
                										f=' 0 '
                									fi
                									;;
                								"7")
                									if [[ $g = '   ' ]]; then
                										varend=1 tour=1
                										g=' 0 '
                									fi
                									;;
                								"8")
                									if [[ $h = '   ' ]]; then
                										varend=1 tour=1
                										h=' 0 '
                									fi
                									;;
                								"9")
                									if [[ $i = '   ' ]]; then
                										varend=1 tour=1
                										i=' 0 '
                									fi
                				esac
                			done
                		fi
                	fi
                	if [[ $a = ' X ' ]]; then
                		if [[ $c = '   ' ]]; then
                			c=' 0 '
                			tour=1
                		elif [[ $b = '   ' ]]
                			b=' 0 '
                			tour=1
                		else
                			varend=
                			while [[ -z varend ]]; do
                				var=$(($RANDOM*10/32767))
                				case $var in
                								"1")
                									if [[ $a = '   ' ]]; then
                										varend=1 tour=1
                										a=' 0 '
                									fi
                									;;
                								"2")
                									if [[ $b = '   ' ]]; then
                										varend=1 tour=1
                										b=' 0 '
                									fi
                									;;
                								"3")
                									if [[ $c = '   ' ]]; then
                										varend=1 tour=1
                										c=' 0 '
                									fi
                									;;
                								"4")
                									if [[ $d = '   ' ]]; then
                										varend=1 tour=1
                										d=' 0 '
                									fi
                									;;
                								"5")
                									if [[ $e = '   ' ]]; then
                										varend=1 tour=1
                										e=' 0 '
                									fi
                									;;
                								"6")
                									if [[ $f = '   ' ]]; then
                										varend=1 tour=1
                										f=' 0 '
                									fi
                									;;
                								"7")
                									if [[ $g = '   ' ]]; then
                										varend=1 tour=1
                										g=' 0 '
                									fi
                									;;
                								"8")
                									if [[ $h = '   ' ]]; then
                										varend=1 tour=1
                										h=' 0 '
                									fi
                									;;
                								"9")
                									if [[ $i = '   ' ]]; then
                										varend=1 tour=1
                										i=' 0 '
                									fi
                				esac
                			done
                		fi
                	fi
                fi
                #scor2
                if [[ $scor2 = 1 ]]; then
                	if [[ $d = ' X ' ]]; then
                		if [[ $e = '   ' ]]; then
                			e=' 0 '
                			tour=1
                		elif [[ $f = '   ' ]]
                			f=' 0 '
                			tour=1
                		else
                			varend=
                			while [[ -z varend ]]; do
                				var=$(($RANDOM*10/32767))
                				case $var in
                								"1")
                									if [[ $a = '   ' ]]; then
                										varend=1 tour=1
                										a=' 0 '
                									fi
                									;;
                								"2")
                									if [[ $b = '   ' ]]; then
                										varend=1 tour=1
                										b=' 0 '
                									fi
                									;;
                								"3")
                									if [[ $c = '   ' ]]; then
                										varend=1 tour=1
                										c=' 0 '
                									fi
                									;;
                								"4")
                									if [[ $d = '   ' ]]; then
                										varend=1 tour=1
                										d=' 0 '
                									fi
                									;;
                								"5")
                									if [[ $e = '   ' ]]; then
                										varend=1 tour=1
                										e=' 0 '
                									fi
                									;;
                								"6")
                									if [[ $f = '   ' ]]; then
                										varend=1 tour=1
                										f=' 0 '
                									fi
                									;;
                								"7")
                									if [[ $g = '   ' ]]; then
                										varend=1 tour=1
                										g=' 0 '
                									fi
                									;;
                								"8")
                									if [[ $h = '   ' ]]; then
                										varend=1 tour=1
                										h=' 0 '
                									fi
                									;;
                								"9")
                									if [[ $i = '   ' ]]; then
                										varend=1 tour=1
                										i=' 0 '
                									fi
                				esac
                			done
                		fi
                	fi
                	if [[ $e = ' X ' ]]; then
                		if [[ $d= '   ' ]]; then
                			d=' 0 '
                			tour=1
                		elif [[ $f = '   ' ]]
                			f=' 0 '
                			tour=1
                		else
                			varend=
                			while [[ -z varend ]]; do
                				var=$(($RANDOM*10/32767))
                				case $var in
                								"1")
                									if [[ $a = '   ' ]]; then
                										varend=1 tour=1
                										a=' 0 '
                									fi
                									;;
                								"2")
                									if [[ $b = '   ' ]]; then
                										varend=1 tour=1
                										b=' 0 '
                									fi
                									;;
                								"3")
                									if [[ $c = '   ' ]]; then
                										varend=1 tour=1
                										c=' 0 '
                									fi
                									;;
                								"4")
                									if [[ $d = '   ' ]]; then
                										varend=1 tour=1
                										d=' 0 '
                									fi
                									;;
                								"5")
                									if [[ $e = '   ' ]]; then
                										varend=1 tour=1
                										e=' 0 '
                									fi
                									;;
                								"6")
                									if [[ $f = '   ' ]]; then
                										varend=1 tour=1
                										f=' 0 '
                									fi
                									;;
                								"7")
                									if [[ $g = '   ' ]]; then
                										varend=1 tour=1
                										g=' 0 '
                									fi
                									;;
                								"8")
                									if [[ $h = '   ' ]]; then
                										varend=1 tour=1
                										h=' 0 '
                									fi
                									;;
                								"9")
                									if [[ $i = '   ' ]]; then
                										varend=1 tour=1
                										i=' 0 '
                									fi
                				esac
                			done
                		fi
                	fi
                	if [[ $f = ' X ' ]]; then
                		if [[ $d = '   ' ]]; then
                			d=' 0 '
                			tour=1
                		elif [[ $e = '   ' ]]
                			e=' 0 '
                			tour=1
                		else
                			varend=
                			while [[ -z varend ]]; do
                				var=$(($RANDOM*10/32767))
                				case $var in
                								"1")
                									if [[ $a = '   ' ]]; then
                										varend=1 tour=1
                										a=' 0 '
                									fi
                									;;
                								"2")
                									if [[ $b = '   ' ]]; then
                										varend=1 tour=1
                										b=' 0 '
                									fi
                									;;
                								"3")
                									if [[ $c = '   ' ]]; then
                										varend=1 tour=1
                										c=' 0 '
                									fi
                									;;
                								"4")
                									if [[ $d = '   ' ]]; then
                										varend=1 tour=1
                										d=' 0 '
                									fi
                									;;
                								"5")
                									if [[ $e = '   ' ]]; then
                										varend=1 tour=1
                										e=' 0 '
                									fi
                									;;
                								"6")
                									if [[ $f = '   ' ]]; then
                										varend=1 tour=1
                										f=' 0 '
                									fi
                									;;
                								"7")
                									if [[ $g = '   ' ]]; then
                										varend=1 tour=1
                										g=' 0 '
                									fi
                									;;
                								"8")
                									if [[ $h = '   ' ]]; then
                										varend=1 tour=1
                										h=' 0 '
                									fi
                									;;
                								"9")
                									if [[ $i = '   ' ]]; then
                										varend=1 tour=1
                										i=' 0 '
                									fi
                				esac
                			done
                		fi
                	fi
                fi
                #scor3
                if [[ $scor1 = 1 ]]; then
                	if [[ $a = ' X ' ]]; then
                		if [[ $c = '   ' ]]; then
                			c=' 0 '
                			tour=1
                		elif [[ $b = '   ' ]]
                			b=' 0 '
                			tour=1
                		else
                			varend=
                			while [[ -z varend ]]; do
                				var=$(($RANDOM*10/32767))
                				case $var in
                							"1")
                									if [[ $a = '   ' ]]; then
                										varend=1 tour=1
                										a=' 0 '
                									fi
                									;;
                								"2")
                									if [[ $b = '   ' ]]; then
                										varend=1 tour=1
                										b=' 0 '
                									fi
                									;;
                								"3")
                									if [[ $c = '   ' ]]; then
                										varend=1 tour=1
                										c=' 0 '
                									fi
                									;;
                								"4")
                									if [[ $d = '   ' ]]; then
                										varend=1 tour=1
                										d=' 0 '
                									fi
                									;;
                								"5")
                									if [[ $e = '   ' ]]; then
                										varend=1 tour=1
                										e=' 0 '
                									fi
                									;;
                								"6")
                									if [[ $f = '   ' ]]; then
                										varend=1 tour=1
                										f=' 0 '
                									fi
                									;;
                								"7")
                									if [[ $g = '   ' ]]; then
                										varend=1 tour=1
                										g=' 0 '
                									fi
                									;;
                								"8")
                									if [[ $h = '   ' ]]; then
                										varend=1 tour=1
                										h=' 0 '
                									fi
                									;;
                								"9")
                									if [[ $i = '   ' ]]; then
                										varend=1 tour=1
                										i=' 0 '
                									fi
                				esac
                			done
                		fi
                	fi
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  29 mars 2015 à 21:05:41

                  c'est long hein^^ et c'est loin d'être fini, il manque juste la suite parce que j'essayai de trouver l'erreur.

                  en revanche, le pastebin ne colore pas de la même façon que sublim text, et pour info, vim me montre les même problème de couleur.

                  • Partager sur Facebook
                  • Partager sur Twitter
                    29 mars 2015 à 21:15:57

                    Rednax a écrit:

                    Tu peux le mettre sur un pastebin ?


                    :colere2: Tu te doutes bien que je n'édite pas avec pastebin, et que 700 lignes ici, c'est affreux à c/c

                    'Fin bref :

                    Déjà première ligne, pas obligatoire mais une bonne habitude à prendre :

                    #!/bin/bash

                    Après tes conditions dans les if ... c'est pas bon ...

                    [[ $b = ' X ' ]] # NON
                    [[ $b == ' X ' ]] # Potable mais pas terrible
                    [[ $b -eq ' X ' ]] # C'est tout de suite mieux

                    Idem pour les !=

                    La dernière condition de tes case n'est pas fermée, c'est ce qui fait que ton code n'est pas reconnu.

                        "9")
                                                        if [[ $i -eq '   ' ]]; then
                                                            varend=1 tour=1
                                                            i=' 0 '
                                                        fi
                    									;; # OUBLIE A CHAQUE FOIS

                    Voilà, c'est ce qui m'a sauté aux yeux à la première lecture.




                    -
                    Edité par Rednax 29 mars 2015 à 21:16:54

                    • Partager sur Facebook
                    • Partager sur Twitter
                    Anonyme
                      29 mars 2015 à 21:46:56

                      enfaîte, ce n'est qu’une parti du script, c'est pour ça que je n'est pas mis le shebang, les lignes du fichier ia seront inclue dans un autre script ayant le shebang.

                      pour le reste, je fessai comme vu dans des tuto, après, c'est clair que ça ne peu pas faire de mal^^

                      merci pour ton aide, je vais corrigé tout ça et je te tiens au courant.

                      • Partager sur Facebook
                      • Partager sur Twitter
                      Anonyme
                        29 mars 2015 à 22:06:38

                        eh bien écoute, après correction, je ne vois aucun problème. Merci pour ton aide, ça commençais a m'énerver :)
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Anonyme
                          29 mars 2015 à 22:12:38

                          merci, toi aussi (enfin si ta des projet en cour) ;)
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Anonyme
                            30 mars 2015 à 21:01:46

                            re bonjour, j'ai continuer mon petit script, j'ai un problème lorsque j'essaie d'exécuter le morpion complet avec l'IA.

                            voici les ligne

                            #scor1
                            if [[ $scor1 -eq 1 ]] && [[ $tour -eq 0 ]]; then
                            	if [[ $a -eq ' X ' ]] && [[ $tour -eq 0 ]]; then
                            		if [[ $b -eq '   ' ]]; then
                            			b=' 0 '
                            			scor1=$(($scor1-1))
                            			scor5=$(($scor5-1))
                            			tour=1
                            		elif [[ $c -eq '   ' ]]
                            			c=' 0 '
                            			tour=1
                            		else
                            			varend=
                            			while [[ -z varend ]]; do
                            				var=$(($RANDOM*10/32767))
                            				case $var in
                            								"1")
                            									if [[ $a -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										a=' 0 '
                            										scor1=$(($scor1-1))
                            										scor4=$(($scor4-1))
                            										scor7=$(($scor7-1))
                            									fi
                            									;;
                            								"2")
                            									if [[ $b -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										b=' 0 '
                            										scor1=$(($scor1-1))
                            										scor5=$(($scor5-1))
                            									fi
                            									;;
                            								"3")
                            									if [[ $c -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										c=' 0 '
                            										scor1=$(($scor8-1))
                            										scor6=$(($scor8-1))
                            										scor8=$(($scor8-1))
                            									fi
                            									;;
                            								"4")
                            									if [[ $d -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										d=' O '
                            										scor2=$(($scor8-1))
                            										scor4=$(($scor8-1))
                            									fi
                            									;;
                            								"5")
                            									if [[ $e -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										e=' 0 '
                            										scor2=$(($scor2-1))
                            										scor5=$(($scor5-1))
                            										scor7=$(($scor7-1))
                            										scor8=$(($scor8-1))
                            									fi
                            									;;
                            								"6")
                            									if [[ $f -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										f=' 0 '
                            										scor2=$(($scor2-1))
                            										scor6=$(($scor6-1))
                            									fi
                            									;;
                            								"7")
                            									if [[ $g -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										g=' 0 '
                            										scor3=$(($scor3-1))
                            										scor4=$(($scor4-1))
                            										scor8=$(($scor8-1))
                            									fi
                            									;;
                            								"8")
                            									if [[ $h -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										h=' 0 '
                            										scor3=$(($scor3-1))
                            										scor5=$(($scor5-1))
                            									fi
                            									;;
                            								"9")
                            									if [[ $i -eq '   ' ]] && [[ $tour -eq 0 ]]; then
                            										varend=1 tour=1
                            										i=' 0 '
                            										scor3=$(($scor3-1))
                            										scor6=$(($scor6-1))
                            										scor7=$(($scor7-1))
                            									fi
                            									;;
                            				esac
                            			done
                            		fi
                            	fi

                            la ligne 534 correspond  a la ligne 12 du pastebin.

                            c'est la première condition, il y en a pas mal d'autre, donc avec un peu de chance elle sont toute pareil. Le script complet est a plus de 3000 ligne, donc a moins que tu en est besoin, pour l'instant je préfère ne pas les copier...

                            c'est peu être une erreur complètement débile, mais encor une fois, je sèche complètement.

                            -
                            Edité par Anonyme 30 mars 2015 à 21:05:03

                            • Partager sur Facebook
                            • Partager sur Twitter
                              30 mars 2015 à 21:04:48

                              La ligne 534 c'est la ligne 12 de ton c/c ?
                              • Partager sur Facebook
                              • Partager sur Twitter
                                30 mars 2015 à 21:43:30

                                Manque un then à ton elif
                                • Partager sur Facebook
                                • Partager sur Twitter
                                Anonyme
                                  30 mars 2015 à 22:21:28

                                  oh c'est tellement intelligent ce que tu dis là :)

                                  merci, je m'en occupe tout de suite!

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    30 mars 2015 à 22:31:17

                                    timefrost77 a écrit:

                                    oh c'est tellement intelligent ce que tu dis là :)


                                    T'inquiètes, tu verrais la tronche de mes scripts des fois ... :lol:
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                    Anonyme
                                      30 mars 2015 à 23:08:13

                                      okprobleme regler, mais en continuant a débugger le script, un nouveau probleme est aparu

                                      http://pastebin.com/66KTzYxm

                                      cette fois je l'ai inclue entièrement dans le pastebin, tout idée est la bienvenue pour le code et solution pour débug est accepter avec joie :)

                                      si il y a besoin que je rajoute des commentaires pour aider a la compréhension du code, il n'y a pas de problème

                                      -
                                      Edité par Anonyme 31 mars 2015 à 18:05:01

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                      Anonyme
                                        30 mars 2015 à 23:20:53

                                        c'est le dernier défie que je te lance, si tu y arrive, sois sur que je te vénère xD

                                        -
                                        Edité par Anonyme 30 mars 2015 à 23:31:58

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          31 mars 2015 à 9:23:17

                                          Alors juste pour info, pastebin c'est ça : http://pastebin.com/ (ça évite de poster 3.000 lignes sur un forum et de devoir scroller jusqu'en bas)

                                          Sinon pour ton script :

                                          Lignes 3027, 3042, 3057, 3072, 3087, 3102, 3117, 3132 : case non fermés (même souci que plus haut)

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                          Anonyme
                                            31 mars 2015 à 18:09:12

                                            ah d'accord, je pensais que le pastebin était simplement le mode d'édition pour taper les ligne de code...

                                            en revanche, j'ai rajouter les corrections que tu m'as dit, mais j'ai toujours le même problème. le pastebin que j'ai rajouter un peu plus haut a été corriger donc le done est maintenant quelque ligne plus bas, a la ligne 3146.

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              31 mars 2015 à 19:58:36

                                              Vu, ligne 159 un if qui commence mais qui n'est jamais fermé (si tu essaies sur sublime text de le réduire avec la flèche de gauche, tu ne peux pas).
                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                1 avril 2015 à 9:30:03

                                                Il y a le site ShellCheck pour avoir une première analyse d'erreur dans un script bash.

                                                En plus du if par fermé ligne 161 il y a les erreurs suivantes :

                                                Tu utilises -eq pour comparer des strings (-eq c'est pour comparer des entiers pour les strings c'est =).

                                                Ligne 3149 à mon avis ce n'est pas scoj1 mais scorj1.

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                Anonyme
                                                  2 avril 2015 à 17:58:48

                                                  bonjour a tous, et pardonner moi pour mon retard, j'ai abandonner cette ia car je me suis aperçu quelle était bien trop compliquer, je suis en train d'en structuré une autre beaucoup plus simple et courte, et avec BEAUCOUP moins de truck qui ne servent a rien...

                                                  en tout cas, merci pour votre aide, ça m'a beaucoup aider et ça ma permis d'apprendre pas mal de chose.

                                                  Salut a tous! :)

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter

                                                  probleme script bash

                                                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                  • Editeur
                                                  • Markdown