Comment afficher l'espace disque disponible d'un montage dans un format spécifique?

1

Je voudrais afficher l'espace disque disponible d'une monture au xx%format,

Par exemple:

sh-3.1$ df -h /opt/Application/Disk1/
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg00-LogVol09
                       57G   33G   22G  60% /opt/Application/Disk1/

Je souhaite afficher uniquement "% 60"

alwbtc
la source
Il affiche déjà comme ça. Avez-vous une question réelle?
Ignacio Vazquez-Abrams le
@ IgnacioVazquez-Abrams Il veut seulement afficher "60%" (ou "% 60", dunno). Pas toute la sortie.
Slhck

Réponses:

2

Vous pouvez essayer la solution suivante:

df -h /opt/Application/Disk1/ | awk '{print $4}' | tail -1

Ici awk '{print $4}', tout ce qui apparaîtra dans la colonne 4 de votre sortie sera imprimé et tail -1ne filtrera que la dernière ligne.

Eugene S
la source
1

Je souhaite afficher l'espace disque disponible d'une monture au format xx%

...

Je souhaite afficher uniquement "% 60"

L'exemple que vous avez donné ne correspond pas tout à fait à la question puisque l' espace disque disponible dans cet exemple serait de 40%. Si vous souhaitez simplement filtrer la sortie en fonction de l' espace disque utilisé , vous souhaitez utiliser la réponse d'Eugene S. Si vous souhaitez exprimer l’ espace disque disponible en pourcentage, vous pouvez utiliser une version modifiée de celui-ci. Comme ça:

df /opt/Application/Disk1/ | awk '{print (100 -$5 )}' | tail -1 | sed 's/^/%/g'

awk '{print (100 -$5 )}' soustrait le pourcentage de l' espace disque utilisé (qui se trouve dans la 5ème colonne dans la sortie normale de df) de 100, ce qui donne le pourcentage d' espace disque disponible . La fin sed 's/^/%/g'ajoute simplement le symbole% devant la sortie. Pour ajouter% après la sortie, utilisez sed 's/$/%/g'plutôt.

Patrick Simon
la source
0
#!/usr/bin/env python
import os, sys
st = os.statvfs(sys.argv[1])
free = st.f_bfree/st.f_blocks * 100
sys.stdout.write("%.f%%\n" % free)
Grawity
la source