سؤال

أنا أكتب البرامج النسخ الاحتياطي. أريد تحديد برمجيا إذا تم تعديل الملف منذ آخر مرة. هل علم أو شيء من هذا القبيل على الملفات ضمن نظام الملفات Ext3؟

هل كانت مفيدة؟

المحلول

بالتأكيد. اتصل وحسب stat () على الملف، وفحص عضو ST_MTITE:

struct stat {
    /* ... snip ... */
    time_t    st_atime;   /* time of last access */
    time_t    st_mtime;   /* time of last modification */
    time_t    st_ctime;   /* time of last status change */
};

إذا كان لديك في تطبيق Timestamp عندما تم إجراء نسخة احتياطية الأخيرة، يمكنك مقارنة مباشرة.

ملاحظة على الرغم من أن عدم تحديث جميع أنظمة الملفات حقا الوقت المعدل، كما تفعل ذلك هو نوع من مكلفة. يبدو أنك تدرك هذا الخطر.

نصائح أخرى

أعتقد أنك تبحث عنه stat()

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top