StayCrunchy
Messages postés43Date d'inscriptionmercredi 24 novembre 2010StatutMembreDernière intervention26 février 2014
-
23 mai 2012 à 15:07
StayCrunchy
Messages postés43Date d'inscriptionmercredi 24 novembre 2010StatutMembreDernière intervention26 février 2014
-
23 mai 2012 à 21:47
Bonjour,
Après quelques recherches qui m'ont un peu fâchées avec Google (on peut se consoler avec le petit synthé entre 2 recherches (voir event : google.fr)), je ne parviens toujours pas à trouver une solution qui puisse régler le petit problème que je rencontre.
Pour ceux qui se souviennent de mon dernier message, je suis sur un programme qui copie en masse des fichiers d'un dossier A vers un dossier B sous Ubuntu.
Le programme rempli sa mission sans erreur dans la plus part des tests. Les seules fois où le programme s'est comporté bizarrement, cela était (selon moi) du au fait que le dossier B (celui qui reçoit tous les fichiers) se situait sur un disque plein à craquer. Le système affichait des messages qui suggéraient de faire un peu de place.
Pour le moment, je suis obligé de vérifier moi-même qu'il y a assez de place disponible sur un disque de réception avant de lancer le programme mais j'aurais voulu que mon programme puisse lui même me dire lorsqu'il rencontre des problèmes pour copier un fichier. Qu'il puisse comparer la taille du fichier à copier avec la capacité restante sur le disque de réception. Je ne trouve pas de fonctions pour connaitre en temps réel l'espace disponible sur un disque. Je fais donc appel à vos connaissances pour me venir en aide.
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 23 mai 2012 à 20:28
Bonjour.
Je ne trouve pas de fonctions pour connaitre en temps réel l'espace disponible sur un disque
Sous unix, tout est fichier, même ce genre d'information !
En éditant le fichier spécial /proc/meminfo tu obtiens des informations sur la RAM.
Pour ce qui est de la place restante sur disque, soit tu récupères le résultat de la commande "df", soit tu reprends son code source, disponible ici:
http://www.koders.com/c/fidDFE2DF98EDE55BD836E7C0AB9E484FB87CF5FE1E.aspx
N'oublie pas non plus que lors d'une écriture (avec write), on te renvoi un code d'erreur. Si celui-ci est "No space left on device", c'est même encore plus simple :)
Liste des codes d'erreur, le 28 t’intéressera:
[rabbit.eng.miami.edu/info/functions/errors.html rabbit.eng.miami.edu/info/functions/errors.html]
________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfoliohttp://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 23 mai 2012 à 21:36
Il suffit de le copier coller, ça doit être un bug :)
rabbit.eng.miami.edu/info/functions/errors.html
________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfoliohttp://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question