Como posso obter apenas o valor de “swap grátis” da saída do comando “free”?

0

Eu sei que free -m imprimirá todos os valores de memória usados e gratuitos, incluindo os valores de Swap. No entanto, quero apenas obter o valor numérico para a quantidade de troca livre no meu sistema.

Como posso obter apenas o valor de 'troca livre' do comando free ?

    
por Andre Mesquita 26.01.2016 / 22:39

2 respostas

3

Em man free :

FILES
   /proc/meminfo
          memory information

Você pode analisar esse arquivo diretamente em vez de usar free :

$ awk '/SwapFree/' /proc/meminfo
SwapFree:        4007168 kB

Ou apenas para o valor em MB:

$ awk '/SwapFree/ {print $2 / 1024}' /proc/meminfo
3913.25
    
por muru 26.01.2016 / 23:02
0

Eu tentei ver se era possível fazer isso sem comandos adicionais além de free -m , mas não consegui encontrar essa solução.

Este comando, que pode ser executado diretamente na linha de comando, pode fornecer o valor do "Free Swap" de free -m . Você pode colocar isso em um script, se você quiser ter um comando que você pode chamar facilmente para executar isso:

free -m | grep "Swap" | awk '{ print $4 }'
    
por Andre Mesquita 26.01.2016 / 22:39