Comando Mac Terminal para geektools

1

Acabei de receber o Geektools e estou tentando fazer com que um geeklet de shell exiba o comando top -F -R -o cpu da mesma maneira que é exibido no terminal. Através do Google, encontrei este comando para mostrar um conjunto de informações do sistema:

uptime | awk '{print "UPTIME : " $3 " " $4 " " $5 " " }'; top -l 1 | awk '/PhysMem/ {print "RAM : " $8 " "}' ; top -l 2 | awk '/CPU usage/; NR; 5 {printf "CPU" $6, $7=":", $8, $9="user ", $10, $11="sys ", $12, $13}'

Isso tem muito mais informações sobre CPU do que eu quero / preciso. Eu estou esperando para substituir as informações da CPU no segundo comando com o limpador primeiro, mas eu não sei como obtê-lo para exibir corretamente.

    
por flapjacks 13.02.2013 / 07:14

1 resposta

1

Experimente ps aux . Ele exibe uma boa saída limpa ordenada pelo uso da CPU. Se você quiser algo ainda menos confuso, tente

ps aux | awk '{print $3 "       " $11}';

Para entender esse comando, basta executar ps aux e examinar a saída. A variável $3 refere-se à terceira coluna da saída. Você pode adicionar ou remover colunas do GeekTool adicionando ou removendo estas variáveis do comando. A grande quantidade de espaço em branco entre as aspas apenas altera o espaçamento entre as colunas na saída.

Se você quiser mais opções, confira a página do manual digitando man ps . (Você pode fazer isso por top também. Se você está se perguntando por que eu não sugeri uma modificação usando top , isso se deve aos seguintes problemas:

O problema com o GeekTool é que requer saída de um comando que é estático. top pode ser feito para fornecer uma saída estática usando top -l 1 , mas como está fazendo apenas uma amostra, não é possível obter o uso da cpu. (Ele precisa de pelo menos dois para isso.) Você notará que, se você executar top -l 1 , seu uso da CPU será exibido como 0. Para corrigir isso, você pode usar top -l 2 . No entanto, isso exibe o uso do sistema duas vezes e apenas o segundo conjunto de dados está correto. Isso provavelmente não seria útil para o GeekTool. Se você ainda quiser usar top , pode experimentar o seguinte comando: top -l 2 -o cpu -R -stats cpu,command . No entanto, ele exibirá apenas os dados incorretos, porque eles imprimem isso primeiro.

    
por 13.02.2013 / 15:34