] Если ваш файл достаточно мал для того, чтобы все суммы поместились в память, вы можете сделать что-то настолько простое, насколько это возможно: [
] [$ awk '{sum[$1]+=$2}END{for(pat in sum){print pat,sum[pat]}}' file
A 2700
B 900
]
[] Вот то же самое, что и закомментированный скрипт []awk[
]:[
#!/usr/bin/awk -f
{
## Here, we use $1 as the key of an associative array
## and increment its current value by $2. The result of
## this will be an array element for each different $1 in
## the file whose value will be the sum of all associated $2s.
sum[$1]+=$2
}
## The END{} block is exacuted after the entire file
## has been processed.
END{
## Iterate through the keys of the array (the $1s),
## saving each as 'pat'. Then, print the current value of
## 'pat' as well as the associated value (the sum) from
## the array.
for(pat in sum){
print pat,sum[pat]
}
}
]
[] Единственная возможная проблема с этим подходом - если у вас так много строк, что сохранение массива []$1[
]s приведет к тому, что у вас закончится память. В современной системе это маловероятно. С другой стороны, этот подход также работает, когда строки Вашего файла не в порядке, так как он может работать с несортированными файлами.[
RUN Netstat -Pan -tcp --udp
(Syntax Syntax, специфичный Linux) на каждом сервере, чтобы узнать, какие программы слушают какие порты, и отключите тех, которые вам не нужны. Не оставляйте их бега, просто есть случай, любой открытый порт является потенциальным риском.
Я столкнулся с этим: stroace -o spork.out bash -c "echo 1234 >> Некоторые файл"
, чтобы выяснить свой вопрос. Это то, что я нашел:
open("some-file", O_WRONLY|O_CREAT|O_APPEND, 0666) = 3
Ни один файл с именем «Некоторые файл» не существовал в каталоге, в котором я запустил команду Echo
.
Они не являются рискованными (за исключением пальца), но он зависит, если может достигать извне (Интернет) или из локальной сети, в первом случае они рискованы, но Зависит от того, если вы должны использовать сервис, связанный или нет. Мое правило Услуги необходим / используется? Y = OK N = просто выключите его и выключите на ботинок Можно обновить в безопасном обслуживании (IMAPS вместо IMAP)? Y = сделать это n = невозможно, сохранить старый сервис Должен важен также брандвлями, некоторые услуги (CIFS, NFS) должны быть доступны только на LAN, IMHO, но я знаю несколько безумных людей, которые используют NFS снаружи.