soma média máxima e mínima do awk

Conteúdo do arquivo

# cat 
id id appsAplicativos enviadosAplicativos executadosAplicativos com falhaKilled ts 
5 95255 94881 8 77 289 2019-03-14 15:04:31 
6 95263 94883 14 77 289 2019-03-14 15:06:08 
7 95318 94941 11 77 289 2019- 03-14 15:15:00 
8 95318 94941 11 77 289 2019-03-14 15:15:01 
9 95324 94947 11 77 289 2019-03-14 15:16:02 
10 95326 94950 10 77 289 2019-03- 14 15:17:01 
11 95334 94955 13 77 289 2019-03-14 15:18:01 
12 95337 94961 10 77 289 2019-03-14 15:19:01 
13 95341 94966 9 77 289 2019-03-14 15 : 20: 01 
14 95341 94967 8 77 289 2019-03-14 15 : 21: 02

  

1. Encontre o ID máximo

Método um (usar valores predefinidos para comparação)

[root @ hbhly_60_213 ~] # arquivo de gato | tail -n +2 | awk -F "" 'COMEÇA {max = 0} {if ($ 1> max) {max = $ 1}} END {print max}' 
14

 

Método dois (use a classificação de matriz para buscar o primeiro valor)

[root @ hbhly_60_213 ~] # arquivo de gato | tail -n +2 | awk -F "" '{number [$ 1] = $ 1} END {for (i in number) {print number [i] | "sort -nr | cabeça -n 1 "}} 
'14

  

2. Encontre o ID mínimo

Método um (usar valores predefinidos para comparação)

[root @ hbhly_60_213 ~] # arquivo de gato | tail -n +2 | awk -F "" 'COMEÇA {min = 5} {if ($ 1 <min) {min = $ 1}} END {print min}'                                   
5

  Mas isso tem uma falha: o valor mínimo deve ser fornecido com antecedência, se você usar $ 1 para obter, o valor obtido está vazio

[root @ hbhly_60_213 ~] # arquivo de gato | tail -n +2 | awk -F "" 'COMEÇA {min = $ 1} {if ($ 1 <min) {min = $ 1}} END {print min}'   

 

Método dois (use a classificação de matriz para buscar o primeiro valor)

[root @ hbhly_60_213 ~] # arquivo de gato | tail -n +2 | awk -F "" '{number [$ 1] = $ 1} END {para (número em i) {print number [i] | "sort -n | head -n 1 "}} ' 
5

  

3. Retire a soma do id

[root @ hbhly_60_213 ~] # arquivo cat | tail -n +2 | awk -F "" '{sum + = $ 1} END {print sum}'                               
95

  

4. Calcule o valor médio do id

[root @ hbhly_60_213 ~] # arquivo cat | tail -n +2 | awk -F "" '{sum + = $ 1} END {print sum / (NR-1)}' 
10.5556

 

Acho que você gosta

Origin www.cnblogs.com/gentlemanhai/p/12745728.html
Recomendado
Clasificación