GNU/Linux >> Linux Esercitazione >  >> Linux

Ottieni spazio libero su disco con df per visualizzare solo lo spazio libero in kb?

Per ottenere l'output di df per visualizzare i dati in kb basta usare il -k bandiera:

df -k

Inoltre, se specifichi un filesystem in df , otterrai i valori per quello specifico, invece di tutti:

df -k /example

Per quanto riguarda il corpo della tua domanda:vuoi estrarre la quantità di spazio libero su disco su un dato filesystem. Ciò richiederà un po' di elaborazione.

Dato un normale df -k uscita:

$ df -k /tmp
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda1        7223800 4270396   2586456  63% /

Puoi ottenere il Available (4a colonna) ad esempio con awk o cut (precedentemente reindirizzato a tr a squeeze-repeats (-s ) per gli spazi):

$ df -k /tmp | tail -1 | awk '{print $4}'
2586456
$ df -k /tmp | tail -1 | tr -s ' ' | cut -d' ' -f4
2586456

Come sempre, se vuoi memorizzare il risultato in una variabile, usa var=$(command) sintassi come questa:

$ myUsed=$(df -k /tmp | tail -1 | awk '{print $4}')
$ echo "$myUsed"
2586456

Inoltre, dal commento di Tim Bunce puoi gestire nomi di filesystem lunghi usando --direct per ottenere un - invece, in modo che non stampi una riga che rompa il motore:

$ df -k --direct /tmp
Filesystem     1K-blocks    Used Available Use% Mounted on
-                7223800 4270396   2586456  63% /

Puoi utilizzare il comando stat(2) per visualizzare i blocchi liberi e anche per scoprire quanto è grande ciascun blocco, ad es.

stat -f --printf="%a %s\n" /

visualizzerà il numero di blocchi liberi (%a) su un dato file system (/) seguito dalla dimensione del blocco (%s). Per ottenere la dimensione in kB, puoi utilizzare il comando bc(1) come nell'esempio seguente:

stat -f --printf="%a * %s / 1024\n" / | bc

Infine, inserire questo in una variabile è solo questione di usare la sostituzione del backtick (o $() come nella prima risposta):

SOMEVAR=`stat -f --printf="%a * %s / 1024\n" / | bc`

Linux
  1. Come trovare spazio libero su disco e analizzare l'utilizzo del disco?

  2. Come liberare spazio su disco su un server dedicato

  3. Come liberare spazio su disco sui server cPanel

  4. Come posso ottenere a livello di codice lo spazio libero su disco per una directory in Linux

  5. Controlla lo spazio libero su disco per la partizione corrente in bash

Controlla lo spazio libero su disco in Linux con ncdu

5 comandi Linux per controllare lo spazio libero su disco

Come visualizzare l'utilizzo dello spazio su disco con Vizex

Come controllare lo spazio libero su disco su Linux

Pulizia disco:come liberare spazio con cPanel

Procedura:liberare spazio su disco riducendo i blocchi riservati