Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Sous chaîne bash
Envoyé par: Ubuntu66

Bonjour,

Je souhaiterai récupérer une sous chaîne contenu dans une chaîne en bash. La chaîne de départ est contenu dans une variable test. La sous chaîne recherchée est présente entre [] dans la chaîne.
ex:
#!/bin/sh
test =" test1 test2 test3 test4 [je suis la sous chaîne]"
echo $souschaine --> je suis la sous chaîne

Poste le Wednesday 29 August 2007 16:49:07
Répondre     Citer    
Re: Sous chaîne bash
Envoyé par: oudoubah

C'est plus facile en grep :
souschaine=$(echo $chaine | grep -o '\[[^\]]*\]')

En bash, ça donne un truc du genre
souschaine=${test#*\[}
souschaine=${souschaine%\]*}

A tester, et à voir si on peut le faire en une seule ligne de bash


Tu as lu les docs. Tu es devenu un informaticien. Que tu le veuilles
ou non. Lire la doc, c'est le Premier et Unique Commandement de
l'informaticien.
-+- TP in: Guide du Linuxien pervers - "L'évangile selon St Thomas"

Poste le Wednesday 29 August 2007 17:05:49
Répondre     Citer    
Re: Sous chaîne bash
Envoyé par: Ubuntu66

les commandes bash marche très bien.je peux pas utiliser le grep -o car je suis sous linux embarqué et le grep de la busybox ne permet pas l'option -o.
Merci

Poste le Wednesday 29 August 2007 17:27:16
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Sous chaîne bash
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons