Перебор файлов и извлечение значения из имени файла. Сценарий не работает

$ awk 'NR > 1 { s[$2] += $3; n[$2] = $1 } END { for (i in s) { print n[i], i, s[i] }}' file
RS 2 21100
RK 1 11380

Мы используем два массива, один для хранения сумм(s)и один для хранения имен(n). Индексация в массивы выполняется с использованием идентификатора (может быть несколько человек с одинаковым именем, поэтому мы не будем использовать его в качестве индекса ).

Для каждой строки ввода (, за исключением строки заголовка ), мы обновляем сумму и сохраняем имя. В конце просматриваем сохраненную информацию и распечатываем ее.

0
05.06.2019, 01:13
1 ответ

То, что я вижу сразу:
number=echo $i | sed 's%/sys/class/rc/rc([0-9]+)%$0%'Оболочка не знает, как выполнить это как команду и сохранить вывод в переменной number. Попробуйте вместо этого:
number=`echo $i | sed 's%/sys/class/rc/rc([0-9]+)%$0%' `
или
number=$( echo $i | sed 's%/sys/class/rc/rc([0-9]+)%$0%' )

0
28.01.2020, 03:37

Теги

Похожие вопросы