Découpage de varriable

Résolu
Christr Messages postés 350 Statut Membre -  
Christr Messages postés 350 Statut Membre -
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. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    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"'
    ;-))
    0
  2. Christr Messages postés 350 Statut Membre 46
     
    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

    ???
    0
  3. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    [tmpfs]$ set "AB-BOULE-BILE"
    
    [tmpfs]$ echo ${1%-*}
    AB-BOULE
    
    [tmpfs]$ echo ${1#*-}
    BOULE-BILE
    
    [tmpfs]$ echo ${1%%-*}
    AB
    
    [tmpfs]$ echo ${1##*-}
    BILE
    
    [tmpfs]$ 
    ;-))
    0
  4. Christr Messages postés 350 Statut Membre 46
     
    Magnifique

    Grand merci
    0