Вычислить и распечатать сводку с совокупными суммами по штатам и полу из CSV-файла

How would I be able to leave echo off even when I am rebooting my laptop?

Вы можете использовать один из следующих трех способов (как root):

Редактировать/etc/sysctl.conf

Добавьте следующую строку в/etc/sysctl.conf:

net.ipv4.icmp_echo_ignore_all=1

Тогда:

sysctl -p

Использование iptables:

iptables -I INPUT -p icmp --icmp-type echo-request -j DROP

С хроном

Запустите crontab -eот имени пользователя root, затем добавьте следующую строку:

@reboot echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

Запустить и включить службу:

systemctl start cron.service
systemctl enable cron.service
0
28.04.2021, 20:03
1 ответ
$ awk 'BEGIN {FS=",";print "State Gender Purchase Amount"} 
       {assoc_arr[toupper($12)$5]+=$6} 
       END {for (id in assoc_arr) {
           printf "%-8s %-8s %8.2f\n", substr(id,1,2), substr(id,3), assoc_arr[id]
           }
       }' infile

State Gender Purchase Amount
TX       M        23043.64
CA       F        23911.61
TX       F        33734.33
FL       M        18846.49
  • Ассоциативный массив assoc _arr может содержать любые значения составного индекса. Здесь это toupper($12)$5, но вы можете связать любое доступное поле awkзаписи.
  • Используйте числовое форматирование с плавающей запятой (как%f)в действии printf внутри awk one liner, чтобы иметь возможность печатать суммы с десятичными знаками.
0
28.04.2021, 21:42

Теги

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