Aller au contenu

IFS

IFS (Internal Field Separator) : variable du shell qui liste les caractères séparateurs utilisés par le découpage en mots, par read pour répartir une ligne entre plusieurs variables, et par "$*" (premier caractère) pour joindre les arguments. Sa valeur par défaut est espace, tabulation et saut de ligne.

Les blancs d'IFS (espace, tabulation, saut de ligne) se fusionnent et sont ignorés en début et en fin ; tout autre caractère délimite exactement un champ, éventuellement vide (IFS=, read -r a b c sur 1,,3). IFS= (vide) désactive le découpage, d'où l'idiome while IFS= read -r ligne qui garde les espaces de la ligne. On modifie IFS de préférence pour une seule commande (IFS=, read ...) plutôt que pour tout le script.

Dans les cours

Voir aussi