[Shell ksh] Retirer premier caractère

Résolu
JOBiJOBa2 Messages postés 93 Statut Membre -  
zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
j'aimerai pouvoir retirer le signe # d'une chaine si il est présent.

Par exemple :
#abcd
#efgh
#ijkl
mnop

Résultat attendu :
abcd
efgh
ijkl
mnop

Merci d'avance
^^

Ps: je précise que je travaille en ksh
Configuration: Windows XP
Firefox 2.0.0.14

3 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,
    jp@MDK:~/tmpfs ssh$ cat plop
    #abcd
    #efgh
    #ijkl
    mnop
    jp@MDK:~/tmpfs ssh$ sed 's/^#//' plop
    abcd
    efgh
    ijkl
    mnop
    jp@MDK:~/tmpfs ssh$
    ;-))
    1
    1. JOBiJOBa2 Messages postés 93 Statut Membre 5
       
      C'est impeccable jipicy merci bien comme d'habitude.
      0
    2. wafiflicha Messages postés 44 Statut Membre
       
      Bonjour JOB,

      puis comment je peux mettre le résultat en dessous dans une variable (résultat 20)

      line4="Salut 20"

      echo ${line4} | sed 's/.\{6\}//'
      0
    3. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501 > wafiflicha Messages postés 44 Statut Membre
       
      Salut,

      man bash (expansion des paramètres)

      $ line4="Salut 20" 

      $ echo "${line4:6}"
      20

      $ echo "${line4: -2}"
      20
      0
    4. wafiflicha Messages postés 44 Statut Membre
       
      Salut, je te remercie sur ton retour;

      j'ai essayé le code suivant mes ça n'a pas fonctonné :

      FIS="COUNT(*) ---------- 71"

      if [[ ${FIS} | sed 's/.\{20\}//' == "71" ]]
      then
      echo "okey"

      exit 1

      else
      echo "not okey"
      exit 2
      fi
      0
    5. lEprofSonDkon Messages postés 227 Statut Membre 13 > wafiflicha Messages postés 44 Statut Membre
       
      donc, on te montre comment faire, tu fais n'importe quoi d'autre (vraiment n'importe quoi : des pâtes pas cuites avec du pesto 8O), et tu te plains que "ça marche pas!" ?

      et puis, quand la question change, on change de sujet, et donc on ouvre un nouveau sujet.
      0
  2. JOBiJOBa2 Messages postés 93 Statut Membre 5
     
    Pour commencer j'arrive à récupérer tout sauf le premier caractère avec :

    $$ line4="heeeeeeeeeeeeeeeeeeee"
    $$ echo ${line4} | sed 's/.\{1\}//'
    $$ eeeeeeeeeeeeeeeeeeee

    Mais je n'arrive pas à récupérer le h.
    ^^
    0
  3. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    $ echo ${line4} | sed -n 's/\(.\).*/\1/p'
    h
    0
    1. JOBiJOBa2 Messages postés 93 Statut Membre 5
       
      Mais ça marche très bien aussi. Ta première solution est encore plus simple pour mon problème. J'allais cherché trop compliqué ou plutôt trop long.

      Merci encore
      A++
      0