Découpage de chaine

Résolu
Bonjour,

je cherche à découper une chaine que j'ai en parametre dans un script

genre

machaine="toto tutu titi"
et en suite je veu remplir un tableau avec les éléments toto titi et tutu et compter combien il y en a

le pépin c'est que la chaine est de longueur variable et que ce que j'ai essayé avec des cut et awk sa marche pas toujours...

need help =(



--
Cordialement,
Lapourax ;)

9 réponses

  1. Contributeur
    -A c'est un tableau assiociatif, essaye avec -a
    1. Contributeur
      C'est quoi la différence ?
    2. Contributeur
      assiociatf, l'index peut-être n'importe quoi (lettres, mots, etc) sinon il est numérique
    3. Contributeur
      ok interessant sa =)
      merci beaucoup j'ai appris pas mal de trucs sur cette duscussion !
  2. Contributeur
    Sa sa marche bien par contre...
    bizare
    1. Contributeur
      rien de bizarre, c'est normal
    2. Contributeur
      que ton truc précédent ne marche pas c'est bizare je m'entend
  3. Contributeur
    et aussi:
    $ machaine="toto tutu titi tete tata"
    $ set $machaine
    $ echo $#
    5
    $ echo $1 $5
    toto tata
    $ 
    
    1. Contributeur
      L'IFS n'est pas modifié j'y avait pensé...
      et ksh --version sa m'affiche un pavé de texte qui ne veut rien dire du tout '--
      1. Contributeur
        qu'affiche echo $IFS ?
        IFS est modifié das le script ?
        ksh connait les tableaux, même syntaxe
        quel Unix ? quel ksh : ksh --version
        1. Contributeur
          Trouvé !

          chaine="tata titi toto tutu tete"
          set -A tableau $chaine
          echo ${tableau[0]}

          J'ai que le bon truc qui s'affiche =)

          Merci beaucoup quand même !
          1. Contributeur
            Sa marche pas =(

            >   ./test.ksh
            1
            1
            toto tutu titi tete tata


            Sa me met tout dans le [0]

            PS : Mon script est en ksh
            1. Contributeur
              hello
              les tableaux en bash
              $ machaine="toto tutu titi" 
              $ tableau=($machaine) 
              $ echo ${#tableau[@]} 
              3 
              $ machaine="toto tutu titi tete tata" 
              $ tableau=($machaine) 
              $ echo ${#tableau[@]} 
              5 
              $ echo ${tableau[0]}
              toto
              $ echo ${tableau[4]}
              tata
              $