Script para obter o crescimento do espaço de tabela semanal

0

Recebemos todas as semanas o relatório do espaço de tabela db, eu só quero saber como gerar relatório depois de comparar a semana passada e esta semana.

Por favor, encontre os arquivos de amostra abaixo.

Relatório da semana passada:

Tab                          Page             Num     Total      Used     Free  Percent
 Id TableSpace Name   Type   Size     State   Cont    Pages     Pages     Pages    Used
--- ---------------   ----   -----  --------  ----  ------- --------- --------- -------
  0 SYSCATSPACE        SMS   4096     0x0000    1     96511         -         -       -
  1 SYSTOOLSPACE       SMS   4096     0x0000    1       257         -         -       -
  2 USERSPACE1         SMS   4096     0x0000    8  36419005         -         -       -
  3 TSD03              DMS   4096     0x0000    6   7614640   5632000   1980928   73.96
  4 TSI03              DMS   4096     0x0000    5   5999664   5607680    389888   93.46
  5 TSD02              DMS   4096     0x0000    3   2266080   2155264    109568   95.10
  6 TSI02              DMS   4096     0x0000    3   2555904   2396928    158592   93.78
  7 TS08               DMS   4096     0x0000    6  44703680  37979328   6724160   84.95
  8 TS10               DMS   4096     0x0000    1   3248576   1375872   1872672   42.35
  9 TSD04              DMS   4096     0x0000    4    163840    151738     12094   92.61
 10 TSI04              DMS   4096     0x0000    2     67584     28960     38620   42.85
 11 TSD05              DMS   4096     0x0000    3   1572864   1448960    123136   92.12
 12 TSI05              DMS   4096     0x0000    3   1310720    963328    346624   73.49

Relatório desta semana:

Tab                          Page             Num     Total      Used     Free  Percent
 Id TableSpace Name   Type   Size     State   Cont    Pages     Pages     Pages    Used
--- ---------------   ----   -----  --------  ----  ------- --------- --------- -------
  0 SYSCATSPACE        SMS   4096     0x0000    1     96511         -         -       -
  1 SYSTOOLSPACE       SMS   4096     0x0000    1       257         -         -       -
  2 USERSPACE1         SMS   4096     0x0000    8  36342895         -         -       -
  3 TSD03              DMS   4096     0x0000    6   7614640   5620224   1992704   73.80
  4 TSI03              DMS   4096     0x0000    5   5999664   5592320    405248   93.21
  5 TSD02              DMS   4096     0x0000    3   2266080   2150912    113920   94.91
  6 TSI02              DMS   4096     0x0000    3   2555904   2393472    162048   93.64
  7 TS08               DMS   4096     0x0000    6  44703680  37881632   6821856   84.73
  8 TS10               DMS   4096     0x0000    1   3248576   1367008   1881536   42.08
  9 TSD04              DMS   4096     0x0000    4    163840    151362     12470   92.38
 10 TSI04              DMS   4096     0x0000    2     67584     28886     38694   42.74
 11 TSD05              DMS   4096     0x0000    3   1572864   1448704    123392   92.10
 12 TSI05              DMS   4096     0x0000    3   1310720    963072    346880   73.47

Relatório desejado (apenas títulos):

Tab                          Page             Num     Total      Used     Free  Last_weekPercent  New_week Percent   Difference (or) Growth
 Id TableSpace Name   Type   Size     State   Cont    Pages     Pages     Pages    Used            Used
    
por Ramesh J 18.04.2018 / 12:28

1 resposta

0

Solução rápida:

perl -lane '1..eof?$p[$F[0]]=$F[9]:print$_,sprintf("%8s%8.2f",$p[$F[0]],$F[9]-$p[$F[0]])' this_weeks_report last_weeks_report

Saída:

Tab                          Page             Num     Total      Used     Free  Percent       -    0.00
 Id TableSpace Name   Type   Size     State   Cont    Pages     Pages     Pages    Used       -    0.00
--- ---------------   ----   -----  --------  ----  ------- --------- --------- -------       -    0.00
  0 SYSCATSPACE        SMS   4096     0x0000    1     96511         -         -       -       -    0.00
  1 SYSTOOLSPACE       SMS   4096     0x0000    1       257         -         -       -       -    0.00
  2 USERSPACE1         SMS   4096     0x0000    8  36342895         -         -       -       -    0.00
  3 TSD03              DMS   4096     0x0000    6   7614640   5620224   1992704   73.80   73.96   -0.16
  4 TSI03              DMS   4096     0x0000    5   5999664   5592320    405248   93.21   93.46   -0.25
  5 TSD02              DMS   4096     0x0000    3   2266080   2150912    113920   94.91   95.10   -0.19
  6 TSI02              DMS   4096     0x0000    3   2555904   2393472    162048   93.64   93.78   -0.14
  7 TS08               DMS   4096     0x0000    6  44703680  37881632   6821856   84.73   84.95   -0.22
  8 TS10               DMS   4096     0x0000    1   3248576   1367008   1881536   42.08   42.35   -0.27
  9 TSD04              DMS   4096     0x0000    4    163840    151362     12470   92.38   92.61   -0.23
 10 TSI04              DMS   4096     0x0000    2     67584     28886     38694   42.74   42.85   -0.11
 11 TSD05              DMS   4096     0x0000    3   1572864   1448704    123392   92.10   92.12   -0.02
 12 TSI05              DMS   4096     0x0000    3   1310720    963072    346880   73.47   73.49   -0.02

Comentários:

Isso não manipula os títulos. Para fazer isso, é melhor expandir o one-liner para um script completo, onde você pode ajustar com mais facilidade a saída e adicionar outras funcionalidades para atender às suas necessidades.

    
por 18.04.2018 / 15:37