# \[Résolu\] hasher une phrase en tableau

**URL:** <https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075>\
**Category:** Programmation\
**Created:** [Février 20, 2016, 5:07 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075 "2016-02-20T17:07:39Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ludo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ludo/32/3426_2.png) [@Ludo](https://www.debian-fr.org/u/Ludo)\
**Post date:** [Février 20, 2016, 5:07 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/1 "2016-02-20T17:07:39Z")

</div>

Coucou,

Je bloque sur un trucs, j’aimerai en fonction d’un résultat qui se compose de tel sorte: chaine\_de\_caractères,chaine\_de\_caractères,… séparer les éléments pour que cela devienne:

chaine\_de\_caractères  
chaine\_de\_caractères  
 …

Pour pouvoir traiter les éléments dans un 'for’  
Le problème c’est que le nombre d’éléments chaine\_de\_caractères est variable. Donc je ne peut utilisé un awk -F “,” ‘{print$1,…}’

J’espère que je m’exprime bien 😉

p.s.: c’est du bash ^^

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 20, 2016, 5:07 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/2 "2016-02-20T17:07:41Z")

</div>

Tu «pipes» le tout par un «sed -e ‘1,$s/,/\n/g’» non?

---

<div class="post-metadata">

**Author:** ![Ludo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ludo/32/3426_2.png) [@Ludo](https://www.debian-fr.org/u/Ludo)\
**Post date:** [Février 20, 2016, 5:07 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/3 "2016-02-20T17:07:41Z")

</div>

Je vais essayer 😉

SED est très flou pour moi ^^ j’essaye de bidouiller depuis 1h avec et je n’arrive à rien 😛

Merci

[EDIT]

Cool magnifique ça marche !!! Merci !

Me reste plus qu’à apprendre sed comme il faut 😉

[REéDIT]

Ça t’embête de me décortiquer la commande j’ai du mal à saisir 🙂

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 5:07 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/4 "2016-02-20T17:07:45Z")

</div>

> [@](#):
>
> sed -e ‘1,$s/,/\n/g’

-e -\> commande sur la ligne de commande  
1,$ -\> s’applique de la ligne 1 à la dernière  
s -\> substitution  
/,/\n/ -\> remplace , par la fin de ligne  
g -\> remplacer pour toutes les occurence de cahque ligne et pas la première

---

<div class="post-metadata">

**Author:** ![Ludo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ludo/32/3426_2.png) [@Ludo](https://www.debian-fr.org/u/Ludo)\
**Post date:** [Février 20, 2016, 5:08 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/5 "2016-02-20T17:08:21Z")

</div>

> [@](#):
>
> [quote=“fran.b”]sed -e ‘1,$s/,/\n/g’

-e -\> commande sur la ligne de commande  
1,$ -\> s’applique de la ligne 1 à la dernière  
s -\> substitution  
/,/\n/ -\> remplace , par la fin de ligne  
g -\> remplacer pour toutes les occurence de cahque ligne et pas la première[/quote]

Merci ça rentre mieux comme ça 🙂

C’est marrant je viens de vouloir utiliser la commande pour un autre script sur un autre serveur et cela ne marche pas du tout, un shell trop vieux surement ^^  
finalement je m’en suis tiré avec un:

```auto

```

Comme quoi en Linux y’a mille et une façons de faire une chose 🙂

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 5:08 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/6 "2016-02-20T17:08:21Z")

</div>

C’est pas du shell c’est sed mais c’est surprenant je trouve

---

<div class="post-metadata">

**Author:** ![Ludo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ludo/32/3426_2.png) [@Ludo](https://www.debian-fr.org/u/Ludo)\
**Post date:** [Février 20, 2016, 5:08 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/7 "2016-02-20T17:08:21Z")

</div>

> [@](#):
>
> C’est pas du shell c’est sed mais c’est surprenant je trouve

Ha oui se serais la version de sed qui n’interprete pas le ‘\n’ comme il faut et non le shell… OOOKKK (se flagèle)

Version sed sur celui ou ca va pas === \> sed-3.02-11

Là ou ça marche nickel =============== \> sed-4.1.5-5.fc6

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 5:08 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/8 "2016-02-20T17:08:22Z")

</div>

Il te dis quoi comme erreur ?

---

<div class="post-metadata">

**Author:** ![Ludo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ludo/32/3426_2.png) [@Ludo](https://www.debian-fr.org/u/Ludo)\
**Post date:** [Février 20, 2016, 5:08 UTC](https://www.debian-fr.org/t/resolu-hasher-une-phrase-en-tableau/12075/9 "2016-02-20T17:08:35Z")

</div>

> [@](#):
>
> Il te dis quoi comme erreur ?

Y’a pas d’erreur il me colle tout simplement les chaînes de caractère une à une à la place de faire un retour à la ligne quand il tombe sur une virgule.

Je cherche après le changelog de sed pour voir d’où ça viens mais je trouve pas ^^ Il existe pas un site généralisé des changelog de chaque commande de base linux ?
