Je ne connais pas assez bien le comportement de grep et bash pour t’expliquer pourquoi la valeur de $test est déclarée sur une ligne unique, mais les deux valeurs sont bien présentes.
Peux tu poster un peu plus de ton code pour qu’on puisse mettre tes commandes en contexte ?
Je ne suis pas très très bon en programmation,
mais si le résultat de ce script te convient…
#!/bin/bash
val="0/1"
test=$(grep -w ${val} /root/results.log)
# sauvegarde de la variable "IFS"
# afin de pouvoir la restaurer à la fin du script
ifstmp=$IFS
# modification de la variable "IFS" pour le caractère de fin de ligne
IFS="\n"
# pour chaque ligne du retour de la commande "grep" précédente
for ligne in $test; do
# afficher le deuxième champ de la ligne
echo $ligne | awk '{print $2}'
# opération effectuée pour cette ligne,
# on passe à la ligne suivante (boucle "for")
# jusqu'à plus de ligne à lire dans la variable "test"
done
# restauration de la variable "IFS"
IFS=$ifstmp
@ MisterFreez Va falloir que je démonte tout ça pour apprendre,
parce que entre la “purée que j’ai pondu” et ça, y-a vraiment pas photo.
Un grand Merci à MisterFreez.