notes:bash-parse
BASH : Commandes pour parser
Table of Contents
Avec séparateurs
Utiliser les array
IFS=';' array=($line)
Note : L'Internal Field Separator (IFS) est une variable de shell Unix (bash, sh, etc.) définissant les séparateurs de champ reconnus par l'interpréteur.
En général, IFS définit comme séparateurs 3 caractères
- espace
- tabulation (\t)
- saut de ligne (\n).
Pour vérifier cette valeur, il suffit de taper la commande :
set | grep ^IFS=
Le résultat habituel est :
IFS=$' \t\n'
Parfois on a besoin de redéfinir cette valeur, par exemple dans le cas où on ne souhaite pas que l'espace serve de séparateur (cas typique : on a à traiter des fichiers dont les noms contiennent des espaces) : IFS=$'\n' permet de ne traiter que les sauts de ligne comme internal field separator.
Parser une vaiable dans une autre variable
variable2=($(echo $variable2 | awk '{print $2}')
notes/bash-parse.txt · Last modified: 2025/02/19 10:59 by 127.0.0.1