Recuperer le dernier mots (korn shell)

Bonjour tt lmonde,

j'ai besion de developper un scrit qui reçoi un ensemble de parametres en entrée et j'aimerai récupérer le dernier mots dans un message texte représenté par l'un des paramètres (on va dire $3). je doit développer le script en .ksh

merci
Configuration: Windows XP
Firefox 3.0.8

3 réponses

  1. hello
    echo $3 | awk '{print $NF}'
    affiche le dernier mot de $3
    0
    1. merci bcp dubcek pr ta reponse, ça marche
      j'aimerai savoir si tu pouvai m'aider sur mon script
      o fait, le script reçoi plusieur parametres:
      $1 --> "aaa/zzz/eee rrr|tttt 5 : yyy|uuu/iii/ooo|ppp|qqq(sss) = 23"
      $2 --> "1" ou "2" ou "3"
      $3 --> "true"
      .
      .
      . (d'autres parametres)

      je voudrai recuperer du $1 : "ooo" "5" "qqq(sss)" et "23" (pour 23 c'est la reponse que tu ma donné)
      et pour $2 transformer "1" en "yes", "2" en "NO" et "3" en "maybe"

      et metre tous ceci dans un tableau qui s'affiche a l'execution du script
      --------------------------------------------
      date | host | a | b | c | d | e |
      ------------------------------------------
      | | | | | | |

      l'ordre n'est pas important

      merci

      cdlt
      0
  2. hello
    enlever l'espace après et avant [ ]

    echo "aaa/zzz/eee rrr|tttt 5 : yyy|uuu/iii/ooo|ppp|qqq(sss) = 23" | awk '{split($5, x, "[ /\| ]") ; print x[4], $3, x[6], $NF}'
    ooo 5 qqq(sss) 23
    
    echo $2 | awk '/1/ {s="yes"} ; /2/ {s="NO" } ; /3/ {s="maybe"}  ; END{print s}'
    
    0
    1. ça ma beaucoup aidé, merci
      jai une ptite question sur le tableau
      comment fair pour attribuer un nombre de caractere à une colone,
      je m'explique: je veu par exemple mettre un nombre dans une case d'un tableu, et je ne sais pas de combien de chiffres est composé, (exp "5" ou "3654" ou "23" ), les case d'une ligne sont separé par "|" et je ne veu pas que "|" dépasse si j'ai un nombre de 3 ou 4 caractere

      merci
      0
  3. x=3
    printf("%5d\n", x)

    x s'affche sur 5 position

    echo | awk '{x=1 ; y=123 ; printf("%5d|%5d\n",x,y)}'
        1|  123
    
    0