[bash] ligne 9: =: Aucun fichier ou dossier

Résolu/Fermé
Jeanaimarre - Modifié le 24 juin 2022 à 14:04
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 27 juin 2022 à 11:47
Bonjour,

J'ai rédigé cette condition en bash, mais malheureusement il m'affiche deux erreurs identiques :
n=1
vartst=9
IP="192.168.10.250"
if [ "$n" <= "$vartst" ]
then
    n1="00$n"
elif [ "$n" <= "99" ]
then
    n1="0$n"
else
    n1="$n"
fi


./fonctionbouclefor: ligne 9: =: Aucun fichier ou dossier de ce type
./fonctionbouclefor: ligne 12: =: Aucun fichier ou dossier de ce type
A voir également:

2 réponses

mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
24 juin 2022 à 14:03
Bonjour,

La syntaxe n'est pas bonne (voir ce lien). En bash :

#!/bin/bash
n=1
vartst=9
IP="192.168.10.250"
if (("$n" <= "$vartst")) 
then
    n1="00$n"
elif (("$n" <= "99"))
then
    n1="0$n"
else
    n1="$n"
fi


Bonne chance
0
Jeanaimarreuuuh Messages postés 1 Date d'inscription jeudi 23 juin 2022 Statut Membre Dernière intervention 24 juin 2022
Modifié le 27 juin 2022 à 11:46
Merci. Au final, j'ai réglé mon problème en faisant cela :

function fint()
{
  if [ "9" -ge "$1" ]
  then
    n1="00$1"
  elif [ "99" -ge "$1" ]
  then
    n1="0$1"
  else
    n1="$1"
  fi
}
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
27 juin 2022 à 11:47
Merci pour ton retour, c'est effectivement une autre syntaxe possible.
0