Нет, такого индекса нет. Значения массива не учитывают, сколько раз они были увеличены. Наиболее естественным здесь является использование второго массива:
$ awk -F, '{sum[$1]+=$2;seen[$1]++} END{for(x in sum) print x,seen[x],sum[x]}' file
A 2 25
B 1 12
C 3 18
Вы также можете использовать двумерный массив, как показано в ответе Кос, но, как видите, это действительно не упрощает все в любом случае. В качестве альтернативы вы можете использовать некоторые perl magic:
$ perl -F, -lane 'push @{$k{$F[0]}},${$k{$F[0]}}[-1]+$F[1];
END{print "$_ ",$#{$k{$_}}+1," ${$k{$_}}[-1]" for keys(%k)}' file
C 3 18
B 1 12
A 2 25
Нет, это не линейный шум, и да, он использует один массив для печати всего.
Мы замечаем это в вашей беспроводной информации:
Pokojicek <MAC 'Pokojicek' [AN5]> Infra 6 2437 MHz 54 Mbit/s 78 ▂▄▆_ WEP yes *
Многие драйверы Linux плохо работают с WEP. Кроме того, это довольно небезопасно: https://en.wikipedia.org/wiki/Wired_Equivalent_Privacy
В 2005 году группа из Федерального бюро расследований США продемонстрировала, что они взломали WEP-защищенный сети через 3 минуты с использованием общедоступных инструментов.Почти все устройства, изготовленные за последние десять лет, поддерживают более безопасный WPA2-AES.
Пожалуйста, проверьте настройки в маршрутизаторе. WPA2-AES является предпочтительным; не WPA и WPA2, а не TKIP. Во-вторых, если ваш маршрутизатор способен к N скоростям, у вас может быть более высокая связь с шириной канала 20 МГц в полосе 2,4 ГГц вместо автоматической 20/40 МГц, хотя это может повлиять на N скоростей. Мне также повезло с фиксированным каналом 1, 6 или 11, а не с автоматическим выбором канала. Кроме того, убедитесь, что маршрутизатор не настроен только на использование N скоростей; auto B, G и N являются предпочтительными. После внесения этих изменений перезагрузите маршрутизатор.
Далее я рекомендую, чтобы ваш регулирующий домен был установлен явно. Проверьте ваш:
sudo iw reg get
Если вы получите 00, это настройка одного размера, возможно, подходит для всех. Найдите ваш здесь: https://en.wikipedia.org/wiki/Wired_Equivalent_Privacy Затем установите его временно:
sudo iw reg set IS
Конечно, замените код страны, если не Исландию. Установите его навсегда:
gksudo gedit /etc/default/crda
Используйте nano или kate или leafpad, если у вас нет текстового редактора gedit.
Измените последнюю строку:
REGDOMAIN=IS
Корректировка тщательно, сохраните и закройте текстовый редактор.
Затем я установил IPv6 для игнорирования в Network Manager: http://docs.fedoraproject.org/en-US/Fedora /18/html/Installation_Guide/images/netconfig/network-connections-ipv6-ignore.png Этот пример для ethernet, но вы хотите беспроводную связь.
Возможно, вы можете попробовать это сразу после перезагрузки:
sudo iwconfig
Посмотрите, указана ли ваша беспроводная карта как power management on, затем выполните приведенную ниже команду (заменив CARDNAME на реальное имя вашего устройства, например, wlp3s0):
sudo iwconfig CARDNAME power off
Если это исправляет вашу проблему, вы можете отредактировать следующий файл, чтобы сделать его постоянным:
/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
Измените настройку wifi.powersave с 3 - 2
Мы замечаем это в вашей беспроводной информации:
Pokojicek <MAC 'Pokojicek' [AN5]> Infra 6 2437 MHz 54 Mbit/s 78 ▂▄▆_ WEP yes *
Многие драйверы Linux плохо работают с WEP. Кроме того, это довольно небезопасно: https://en.wikipedia.org/wiki/Wired_Equivalent_Privacy
В 2005 году группа из Федерального бюро расследований США продемонстрировала, что они взломали WEP-защищенный сети через 3 минуты с использованием общедоступных инструментов.Почти все устройства, изготовленные за последние десять лет, поддерживают более безопасный WPA2-AES.
Пожалуйста, проверьте настройки в маршрутизаторе. WPA2-AES является предпочтительным; не WPA и WPA2, а не TKIP. Во-вторых, если ваш маршрутизатор способен к N скоростям, у вас может быть более высокая связь с шириной канала 20 МГц в полосе 2,4 ГГц вместо автоматической 20/40 МГц, хотя это может повлиять на N скоростей. Мне также повезло с фиксированным каналом 1, 6 или 11, а не с автоматическим выбором канала. Кроме того, убедитесь, что маршрутизатор не настроен только на использование N скоростей; auto B, G и N являются предпочтительными. После внесения этих изменений перезагрузите маршрутизатор.
Далее я рекомендую, чтобы ваш регулирующий домен был установлен явно. Проверьте ваш:
sudo iw reg get
Если вы получите 00, это настройка одного размера, возможно, подходит для всех. Найдите ваш здесь: https://en.wikipedia.org/wiki/Wired_Equivalent_Privacy Затем установите его временно:
sudo iw reg set IS
Конечно, замените код страны, если не Исландию. Установите его навсегда:
gksudo gedit /etc/default/crda
Используйте nano или kate или leafpad, если у вас нет текстового редактора gedit.
Измените последнюю строку:
REGDOMAIN=IS
Корректировка тщательно, сохраните и закройте текстовый редактор.
Затем я установил IPv6 для игнорирования в Network Manager: http://docs.fedoraproject.org/en-US/Fedora /18/html/Installation_Guide/images/netconfig/network-connections-ipv6-ignore.png Этот пример для ethernet, но вы хотите беспроводную связь.
Возможно, вы можете попробовать это сразу после перезагрузки:
sudo iwconfig
Посмотрите, указана ли ваша беспроводная карта как power management on, затем выполните приведенную ниже команду (заменив CARDNAME на реальное имя вашего устройства, например, wlp3s0):
sudo iwconfig CARDNAME power off
Если это исправляет вашу проблему, вы можете отредактировать следующий файл, чтобы сделать его постоянным:
/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
Измените настройку wifi.powersave с 3 - 2