Script bash et exception dans mon IF

Résolu
pcsystemd Messages postés 734 Statut Membre -  
mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je souhaite faire une exception dans mon script bash mais j'ai du mal!

Voici la partie du script qui nous intéresse :

if [ "${presta}" = "TIRPE" ]
then
extracts=lprte
fi
for extract in $extracts ; do
cd ${TMPDIR}

if [ "${extract}" = "t23" ] ; then
prefix=t23
if [ -z "$re" ]
then
re='605'
fi
elif [ "${extract}" = "n_eps" ] ; then
prefix=n_eps
if [ -z "$re" ]
then
re='719'
fi
else
prefix=nta
if [ -z "$re" ]
then
re='101,511,806'
fi
fi


Pour un presta uniquement qui s'appelle "rpfe" je souhaite que le fichier est un prefixe 100_564 a la place de "t23".

En gros je veux mettre en place une exception pour ce presta. Je me demandais si je pouvais le faire dans le if suivant via un else :

if [ "${extract}" = "t23" ] ; then
prefix=t23
if [ -z "$re" ]
then
re='605'
fi


Une idée comment je pourrais faire cela simplement?
Merci



--
L'accès au savoir est la première liberté que chaque homme devrait avoir.

2 réponses

  1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 944
     
    Je n'ai pas tout à fait compris ce que tu voulais faire, mais tu pourrais construire une variable prefix_to_find qui est initialisée différemment si $presta est égal à rpfe, puis ensuite comparer prefix à prefix_to_find.

    Bonne chance
    0
  2. pcsystemd Messages postés 734 Statut Membre 23
     
    Merci.

    J'ai trouvé finalement en faisant simplement un sous IF! Pourquoi je me complique la vie des fois!

    if [ "${extract}" = "t23" ] ; then
    prefix=t23
    if [ "${presta}" = "rpfe" ]
    then
    prefix=100_564
    fi
    if [ -z "$re" ]
    then
    re='605'
    fi


    Merci

    L'accès au savoir est la première liberté que chaque homme devrait avoir.
    0
    1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 944
       
      Merci pour ton retour :-)
      0