[Linux] Problème d'execution de script "-eq&q

Résolu
Bonjour,

J'ai un progiciel que je dois installer via un script d'installation, simplement il y a des erreures dans le script : il ne reconnait pas la comparateur "-eq".

J'essai de l'installer avec sh ou bash ça revient au même, alors que certains de mes collègues arrivent très bien à l'installer avec la même distribution.

Que manque-t-il ?

Merci

Armand
Configuration: Windows XP
Firefox 2.0.0.2

9 réponses

  1. Effectivement ma valeure était nulle.

    Il s'agit d'une faute de frappe de l'éditeur qui avai, dans son script, orthographié 'suse' de la manière suivante 'slse'

    J'ai remonté le problème à l'éditeur

    Merci de votre aide... Maintenant je misère avec ma base Oracle

    Bonne Soirée

    Encore Merci

    Armand
    1. Comment on fait pour le mettre en status résolu ?

      Armand
    2. Modérateur
      @armandÔ racle Ô désespoir... ;-))

      C'est fait ;-))
  2. Modérateur
    Je te renvoie à ce que t'as dit "dubcek " dans son post #7...

    Pour l'exemple :
    [jp@MDK tmpfs]$ set 1 2 3
    [jp@MDK tmpfs]$ echo "$@"
    1 2 3
    [jp@MDK tmpfs]$ var="0"
    [jp@MDK tmpfs]$ [ ${var} -eq 0 ] && echo $@
    1 2 3
    [jp@MDK tmpfs]$ var=""
    [jp@MDK tmpfs]$ [ ${var} -eq 0 ] && echo $@
    -l: [: -eq: unary operator expected
    [jp@MDK tmpfs]$   
    ;-))
    1. Voici donc les messages d'erreurs exact :

      ./ar_install: line 7949: dlg_Ask_CDPATH: command not found
      ./ar_install: line 2520: [: -eq: unary operator expected
      ./ar_install: line 2530: [: -eq: unary operator expected
      ./ar_install: line 2540: [: -eq: unary operator expected
      ./ar_install: line 2550: [: -eq: unary operator expected
      ./ar_install: line 229: [: -eq: unary operator expected

      Pour la commande que tu m'as demandé de saisir il me renvie ceci :

      srvsusears:/opt/ars/installArs/arsystem # readlink /bin/sh && ls -l /bin/sh
      bash
      lrwxrwxrwx 1 root root 4 2007-03-15 12:13 /bin/sh -> bash

      Voilà j'espere que c'est ce que tu veux...

      Merci de ton aide ;)

      Armand
      1. Contributeur
        Si, dans ton cas, SILENTMODE est indéfini, Il y a erreur de syntaxe, la ligne devenant [ -eq 0 ] && echo "$@"
        1. Modérateur
          Que te renvoie les commandes suivantes :
          readlink /bin/sh && ls -l /bin/sh
          et je réitère ma question précédente : "Quelle est l'erreur exacte retournée par sh ? "..

          Merci ;-)
          1. Non c'est #!/bin/sh

            mais mon collègue y arrive avec le même script dans les même conditions

            Je comprend pas trop...
            1. Contributeur
              Quelle est la première ligne du script ? #!/usr/bin/bash ou quelque chose du genre ?
              1. Modérateur
                Ok merci,

                Tu peux toujours coller le script sur Cjoint et nous donner le lien.

                Autre chose quelle est l'erreur exacte retournée par bash ?
                1. Modérateur
                  Salut,

                  Peux-tu afficher le script s'il te plaît et ta version de bash (bash --version) et celle de ta distrib.
                  1. Merci de me répondre

                    Voici ma version de Bash :

                    GNU bash, version 3.00.0(1)-release (i586-suse-linux)
                    Copyright (C) 2004 Free Software Foundation, Inc.

                    Ma distrib est une 9.2

                    Quand à mon script il fait 13000 Lignes :s Donc je suis pas sur que ce soit possible.

                    Voilà une des fonctions

                    lecho()
                    {
                    echo "$@" >> $LOGFILE
                    [ "${SILENTMODE}" -eq 0 ] && echo "$@"
                    }

                    Si ça peut t'aider

                    Merci

                    Armand