Comment empêcher grep de briser les lignes dans un script ksh?

J’essaie de modifier un script ksh pour imprimer la ligne contenant l’expression “/ var / corefiles”. Je suis assez novice en matière de script, alors ça me gêne. Par exemple, si j’ai la ligne suivante dans un fichier

/dev/x /dev/x2 /var/corefiles yes 

Et je l’utilise pour la boucle:

 for $host in $(grep "var/corefiles" $VFSTAB_LOC); do echo $i done 

Il produit:

  /dev/x /dev/x2 /var/corefiles yes 

Je suis un peu confus quant à savoir pourquoi il imprime seulement un morceau à la fois. Si quelqu’un a des explications / modifications, elles seraient les plus appréciées!

grep "var/corefiles" $VFSTAB_LOC simplement grep "var/corefiles" $VFSTAB_LOC (sans le for ou echo ) fera exactement ce que vous voulez faire.

 grep "var/corefiles" $VFSTAB_LOC | while read line; do echo "$line" done 

ou dans les derniers temps

 readarray mylines < grep "var/corefiles" $VFSTAB_LOC for line in "${mylines[@]}"; do echo "$line" done