154 votes

Vérifier l'espace disque pour le répertoire courant dans bash

Je suis en train d'écrire un programme d'installation de bash. L'utilisateur va aller dans le répertoire cible et exécute le script d'installation, de sorte que la première action devrait être de vérifier qu'il y a assez d'espace. Je sais que df fera rapport tous les systèmes de fichiers, mais je me demandais si il y avait un moyen pour obtenir l'espace libre juste pour la partition, que le répertoire cible est sur.

Edit: la réponse, je suis venu avec

df $PWD | awk '/[0-9]%/{print $(NF-2)}'

Un peu étrange parce que df semble à son format de sortie pour s'adapter à la terminale, donc avec un long point de montage de la sortie est décalée vers le bas une ligne

248voto

Mat Points 104488

Oui:

df -k .

pour le répertoire courant.

df -k /some/dir

si vous voulez vérifier si un répertoire spécifique.

Vous pourriez également vouloir vérifier l' stat(1) commande si votre système. Vous pouvez spécifier des formats de sortie pour le rendre plus facile pour votre script pour analyser. Voici un petit exemple:

$ echo $(($(stat -f --format="%a*%S" .)))

63voto

Girish Points 2989
  1. df commande : Rapport du système de fichiers utilisation de l'espace disque
  2. du commande : fichier Devis d'utilisation de l'espace

Type df -h ou df -k à la liste d'espace libre sur le disque:

$ df -h

OU

$ df -k

du montre combien l'espace d'un ou plusieurs fichiers ou répertoires à l'aide.

$ du -sh

option-s de résumer l'espace est un annuaire de l'aide et de l'option-h permet "lisible" de sortie.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X