Como verificar quanto espaço está livre no diretório de trabalho atual em um sistema Linux?
Tenho um filesize
arquivo que contém 1073741824
a quantidade de espaço em disco em bytes necessária.
Preciso de algo para verificar em um script que na pasta estão contents-of-filesize * 1,25 bytes livres. Como fazer isso?
pwd
pode imprimir o caminho da pasta atual, mas como combiná-lo com df
?
Com GNU
df
:.
é sempre um caminho para o diretório de trabalho atual, enquanto a saída depwd
(que geralmente apenas imprime o conteúdo de$PWD
e, dependendo do shell, sem sempre verificar, ainda representa um caminho para o diretório de trabalho atual) nem sempre é¹.df
A coluna 'savail
é a quantidade de espaço disponível para usuários regulares. Pode ser menor que o espaço disponível para o superusuário, pois geralmente há uma porcentagem do espaço em disco reservada pararoot
recuperação de emergência quando o sistema de arquivos fica cheio.Para obter o espaço livre, parte do qual pode não estar disponível para você, você pode calcular
size
-used
em vez disso:¹ Também é trabalhoso recuperar sua saída de forma confiável quando o caminho² do diretório de trabalho atual pode terminar em caracteres de nova linha. Você também pode usar
$PWD
diretamente.² Bem,
pwd
imprime um caminho para o diretório de trabalho atual, geralmente aquele derivado dos diretórios que você chamoucd
para chegar lá. Dos muitos caminhos possíveis que levam ao diretório de trabalho atual, esse não é necessariamente o canônico para o qual você precisapwd -P
, não que isso faria diferença quando esse caminho fosse passado paradf
.