O Bash realiza a divisão de palavras em strings por si só - na verdade, mais frequentemente do que não, evitando que isso seja um problema, e a razão pela qual a citação é tão importante. É fácil aproveitar isso no seu caso: basta colocar sua string em uma matriz sem citá-la - o bash usará a divisão de palavras para separar os elementos individuais. Assumindo que o seu string é armazenado na variável $str
,
ar=($str) # no quotes!
retornará uma matriz de 5 elementos. Seu índice de matriz é o seu índice de palavras (contando desde 0, como na maioria das linguagens de script e de programação), ou seja, "Idade" é acessada usando
${ar[1]} # 0 => Name, 1 => Age, 2 => Sex, 3 => ID, 4 => Address
ou, se você precisar encontrar o índice do elemento por conteúdo, faça um loop sobre a matriz, ou seja,
function el_index {
cnt=0; for el in "${ar[@]}"; do
[[ $el == "$1" ]] && echo $cnt && break
((++cnt))
done
}
el_index "Age" # => 1