Я разбираю файл журнала и создаю ассоциативные массивы для каждого пользователя с номером строки и последним полем (общее время входа в систему). Строки файла журнала выглядят следующим образом:
jww3321 pts/2 cpe-76-180-64-22 Mon Oct 18 23:29 - 00:27 (00:58)
jpd8635 pts/1 cpe-74-67-131-24 Mon Oct 18 23:22 - 03:49 (04:26)
Где первое поле (jww3321) будет именем массива, а первая запись в массиве будет (1,00: 58), следующая будет (2, ( в следующий раз для пользователя)). Чтобы получить правильные ключи, мне нужно сохранить длину списка и добавить к нему единицу, когда я добавляю следующее значение в пользовательский массив. На данный момент мой код выглядит следующим образом:
cat lastinfo.txt | while read line
do
uname=`echo "$line" | awk '{print $1;}'`
count=`echo "${#$uname[@]}"`
echo "$count"
done
Я пробовал использовать косвенные ссылки, но застрял с этой ошибкой:
l8t1: line 7: ${#$uname[@]}: bad substitution
Есть предложения?