Ajoutez des parenthèses supplémentaires, comme ceci :
myarr=($(ps -u kdride | awk '{ print $1 }'))
# Now access elements of an array (change "1" to whatever you want)
echo ${myarr[1]}
# Or loop through every element in the array
for i in "${myarr[@]}"
do
:
echo $i
done
Voir aussi bash
— Tableaux.
Utilisez le mapfile intégré de Bash (ou son synonyme readarray
)
mapfile -t -s 1 myarr < <(ps -u myusername | awk '{print $1}')
Au moins sous GNU/Linux, vous pouvez formater la sortie de ps
, donc pas besoin de awk
et -s 1
mapfile -t myarr < <(ps -u myusername -o pid=)