Você pode tentar com join
coletar todos os dados em um único arquivo:
join <(join <(sar -q) <(sar -S)) <(join <(sar -u) <(sar -r))
Tarefa:
Eu posso sar -u > tmp.csv
e posso sar -r > tmp.csv
Mas o que eu preciso é de uma grande tabela de todos os arquivos sa * de todas as opções.
sar -r -u -S -q > tmp.csv
não faz bem o trabalho
Problemas
O comprimento de sar -r
e digamos sar -u
pode ser diferente. Para um deles eu tinha 3625, para os outros 3650 e isso não é aceitável.
Solução possível
para cada arquivo sa * eu faço sar -r sa* > sar_r_sa*.csv
, eu faço isso para -r -u -S -q
e recebo cerca de 120 arquivos de dados que eu poderia de alguma forma mesclar com Python pela primeira coluna, e. ( 7,50,01
).
Mas sinto que há uma solução mais fácil para o problema.
Pergunta
Como devo abordar a coleta de todos os dados em um único arquivo
Tente isto:
paste <(sar -r) <(sar -u) <(sar -q) <(sar -S) > sar.out
Um exemplo de saída:
12:00:01 AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit 12:00:01 AM CPU %user %nice %system %iowait %steal %idle 12:00:01 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15
12:10:01 AM 1737724 6311336 78.41 22036 85856 5583532 45.60 12:10:01 AM all 3.92 0.00 8.85 0.01 0.00 87.22 12:10:01 AM 2 872 1.00 1.00 1.00
12:20:01 AM 1737228 6311832 78.42 22484 85860 5582312 45.59 12:20:01 AM all 3.93 0.00 8.83 0.01 0.00 87.23 12:20:01 AM 2 871 1.00 1.01 1.00
12:30:01 AM 1736764 6312296 78.42 22956 85852 5582192 45.59 12:30:01 AM all 3.96 0.00 8.79 0.01 0.00 87.24 12:30:01 AM 2 871 1.00 1.00 1.00
12:40:01 AM 1735636 6313424 78.44 23420 85868 5582264 45.59 12:40:01 AM all 3.92 0.00 8.85 0.01 0.00 87.22 12:40:01 AM 2 871 1.00 1.00 1.00
12:50:01 AM 1734644 6314416 78.45 23884 85872 5582248 45.59 12:50:01 AM all 3.90 0.00 8.86 0.01 0.00 87.22 12:50:01 AM 2 871 1.00 1.00 1.00
01:00:01 AM 1733992 6315068 78.46 24356 85876 5582252 45.59 01:00:01 AM all 3.95 0.00 8.79 0.01 0.00 87.24 01:00:01 AM 2 871 1.00 1.00 1.00
01:10:01 AM 1731508 6317552 78.49 24836 85892 5583444 45.60 01:10:01 AM all 3.95 0.00 8.80 0.01 0.00 87.24 01:10:01 AM 2 872 1.00 1.00 1.00
01:20:01 AM 1732028 6317032 78.48 25304 85880 5582144 45.59 01:20:01 AM all 3.95 0.00 8.80 0.01 0.00 87.24 01:20:01 AM 2 871 1.00 1.00 1.00
01:30:01 AM 1730776 6318284 78.50 25752 85888 5582324 45.59 01:30:01 AM all 3.95 0.00 8.79 0.01 0.00 87.25 01:30:01 AM 2 871 1.00 1.00 1.00
01:40:01 AM 1729152 6319908 78.52 26224 85892 5582404 45.60 01:40:01 AM all 3.95 0.00 8.79 0.01 0.00 87.25 01:40:01 AM 2 871 1.00 1.00 1.00
Nota: você estaria tendo colunas de tempo duplicadas no resultado final