Différence entre python - getmtime () et getctime () dans un système unix
Quelqu'un peut-veuillez préciser quelle est la différence entre os.path.getmtime(path)
et os.path.getctime(path)
dans les systèmes unix . Selon la définition en python docs:
os.path.getmtime(path)
Retour à l'heure de la dernière modification du chemin d'accès. La valeur de retour est un
nombre indiquant le nombre de secondes depuis l'epoch (voir le temps
le module). Soulever des os.erreur si le fichier n'existe pas ou est inaccessible.
os.path.getctime(path)
Retour du système ctime qui, sur certains systèmes comme Unix) est le
l'heure de la dernière modification, et, sur d'autres (comme Windows), est le
le temps de création de chemin d'accès. La valeur de retour est un nombre indiquant le nombre
de secondes depuis l'epoch (voir le module). Soulever des os.d'erreur si
le fichier n'existe pas ou est inaccessible.
Fait que, fondamentalement signifie qu'ils sont la même chose quand utilisé sous unix/systèmes?
#!/usr/bin/python
import os
print os.path.getmtime('File')
print os.path.getctime('FIle')
À la fois les tirages me chercher la même valeur.
Je suis fondamentalement à la recherche pour le dernier date de création du fichier , plutôt que de la date de dernière modification. Est-il possible d'obtenir le même sous unix?
source d'informationauteur misguided
Vous devez vous connecter pour publier un commentaire.
Le mtime se réfère à la dernière fois que le contenu du fichier a été modifié. Ceci peut être modifié sur les systèmes unix, de diverses façons. Souvent, lorsque vous restaurez des fichiers de la sauvegarde, le mtime est modifié de manière à indiquer la dernière fois que le contenu a été modifié avant la sauvegarde a été effectuée.
Le ctime indique la dernière fois que l'inode a été modifié. Cela ne peut être changé. Dans l'exemple ci-dessus avec la sauvegarde, le ctime va encore tenir compte de la période de restauration de fichiers. En outre, ctime est mis à jour quand des choses comme les autorisations de fichier sont modifiés.
Malheureusement, il n'y a généralement aucun moyen de trouver la date de création du fichier. C'est une limitation du système de fichiers sous-jacent. Je crois que le système de fichiers ext4 a ajouté la date de création de l'inode, et Apple HFS prend également en charge, mais je ne suis pas sûr de savoir comment vous alliez à propos de la récupération en Python. (C
stat
de la fonction et de lastat
commande devrait vous montrer que des informations sur les systèmes de fichiers qui le prennent en charge.)À partir de la page de man stat, qui
os.path.getmtime()
etos.path.getctime()
à la fois une utilisation sur les systèmes Unix:Donc non, ce ne sont pas les mêmes.
Ce n'est techniquement pas une question de programmation et donc ne devrait pas y avoir de Débordement de Pile, mais vous pouvez trouver les réponses que vous cherchez ici—qui se trouve être le premier résultat Google pour
ctime mtime atime
. Réponse courte:ctime
changements lorsque le fichier de propriété ou de modification des autorisations, ainsi que lorsque les données dans le fichier des changements.mtime
changements uniquement lorsque les données dans le fichier des changements.