Si l'exemple suivant, qui définit le IFS
variable d'environnement à un caractère de saut de ligne...
IFS=$'\n'
- Que fait le signe du dollar moyenne exactement ?
- Que fait-il dans ce cas précis spécifique ?
- Où puis-je en savoir plus sur cet usage spécifique (Google n'autorise pas les caractères spéciaux dans les recherches et je ne sais pas quoi chercher d'autre) ?
Je sais ce que le IFS
et ce qu'est la variable d'environnement \n
est (saut de ligne), mais pourquoi ne pas simplement utiliser la forme suivante : IFS="\n"
(qui ne fonctionne pas) ?
Par exemple, si je veux parcourir en boucle chaque ligne d'un fichier et que je souhaite utiliser une boucle for, je peux procéder comme suit :
for line in (< /path/to/file); do
echo "Line: $line"
done
Cependant, cela ne fonctionnera pas correctement à moins que IFS
est défini comme un caractère de saut de ligne. Pour que ça marche, il faudrait que je fasse ça :
OLDIFS=$IFS
IFS=$'\n'
for line in (< /path/to/file); do
echo "Line: $line"
done
IFS=$OLDIFS
Note : Je n'ai pas besoin d'un autre moyen pour faire la même chose, j'en connais déjà beaucoup d'autres... Je suis seulement curieux à ce sujet $'\n'
et je me demandais si quelqu'un pouvait me donner une explication à ce sujet.