Découpage de varriable

Résolu
Bonjour,

Voici mon souci je débute en script mais il me faudrait une commande simple et non lourde :

J'ai une variable $1 qui est utilisé pour un script ce dernier
fait la tache suivante :

echo "$1 est present" > presence.txt

la variable $1 commence toujours par AB-..... ou par BA-....

je souhaiterais faire

que les deux premier caractère se retrouve dans une autre variable et que la suite reste dans $1 bien entendu en supprimant le tiret

exemple :

avant traitement
$1 = AB-BOULE

après traitement
$1 = BOULE
$2 = AB

vous pouvez m'aider svp merci
Configuration: Change en permanence

4 réponses

  1. Modérateur
    [tmpfs]$ set "AB-BOULE-BILE"
    
    [tmpfs]$ echo ${1%-*}
    AB-BOULE
    
    [tmpfs]$ echo ${1#*-}
    BOULE-BILE
    
    [tmpfs]$ echo ${1%%-*}
    AB
    
    [tmpfs]$ echo ${1##*-}
    BILE
    
    [tmpfs]$ 
    ;-))
    1. ouaaa oki merci

      mais j oublié

      certaine fois la variable avant traitement se retrouve comme ceci

      AB-BOULE-BILE

      avec ton traitement est ce que j'aurais

      $1 BOULE-BILE
      $2 AB

      ???
      1. Modérateur
        Salut,
        [tmpfs]$ set "AB-BOULE"
        
        [tmpfs]$ echo ${1}
        AB-BOULE
        
        [tmpfs]$ echo ${1%-*}
        AB
        
        [tmpfs]$ echo ${1#*-}
        BOULE
        
        [tmpfs]$
        Si tu as les pages de "man" en français :
        man bash -P 'less -p "^   Remplacement des paramètres"'
        ;-))