Ir ao topo

Tecnobyte

Logomarca da Tecnobyte
Contato por WhatsApp

WhatsApp

(69) 3421-6756

Contato por Telefone

(69) 3421-6756

(69) 3421-6757

Enviar mensagem

Enviar

mensagem

Contato por Facebook

Facebook

Vídeos

Vídeos

Atendimento de segunda a sexta, das 08h00 às 19h00 (horário de Brasília).

Banner

Linux

Como verificar o espaço livre em disco em um script bash shell no Linux?

Se seu script precisa tomar alguma decisão dependendo do espaço livre em disco, você poderá fazer algo como mostrado abaixo.

#!/bin/bash
espacoMinimo="500" # MB
espacoLivre=$(df / -BM --output=avail | sed -n 2p | tr -dc '0-9')
mensagem="Espaço livre: ${espacoLivre} MB."
if [ $espacoLivre -lt $espacoMinimo ]; then
  echo "O espaço mínimo requerido é ${espacoMinimo}MB e só tem ${espacoLivre}MB."
else
  echo "Espaço livre atual: ${espacoLivre}MB."
fi
echo "Verificação concluída!"

A principal parte desse script é aquela que obtém o espaço livre, através do comando df do Linux. O parâmetro -BM informa ao df para retornar o tamanho em MB e o parâmetro --output=avail pede para retornar somente o espaço livre. O resultado disso será algo como segue:

Avail
340MB

Esse resultado é então passado para o comando sed que, com os parâmetros -n 2p retorna somente a segunda linha dos dados de entrada, ou seja, somente a linha que tem o espaço livre, como abaixo:

340MB

Em seguida, esse resultado é repassado para o comando tr, que, com os parâmetros -dc '0-9', retorna somente os dígitos dos dados de entrada, tal como:

340

Esse resultado é então atribuído à variável espacoLivre e o script continua com as demais verificações.

O conteúdo desta página pode ajudar alguém? Compartilhe!