พจนานุกรม

วันที่แก้ไขไฟล์คืออะไร?

วันที่แก้ไข หรือวันที่แก้ไขไฟล์ จะบันทึกว่าไฟล์ถูกเปลี่ยนแปลงครั้งล่าสุดเมื่อใด ค้นหาว่าค่านี้มีหน้าตาอย่างไร อะไรที่ทำให้มันเปลี่ยนแปลง และมันต่างจากวันที่อื่นอย่างไร

file-modification-date-time

Date modified หรือที่เรียกกันว่า modification date หรือ modification time คือวันและเวลาที่ไฟล์ถูกเปลี่ยนล่าสุด ในรายการเมทาดาตา ฟิลด์นี้จะมีชื่อว่า File Modification Date/Time โปรแกรม ExifTool ตั้งชื่อแท็กนี้ว่า FileModifyDate.

ค่าวันที่นี้จะไม่ถูกเก็บไว้ภายในไฟล์ ระบบไฟล์บนดิสก์ของคุณเป็นผู้เก็บค่าไว้ ถัดจากชื่อไฟล์และขนาดไฟล์ ExifTool เรียกค่าลักษณะนี้ว่า pseudo tag เพราะไม่ใช่เมทาดาตาจริงที่อยู่ในไฟล์

ไฟล์ใดที่มีรายการนี้อยู่

ทุกไฟล์จะมีวันที่แก้ไข ไม่ว่าไฟล์นั้นจะเป็นชนิดใดก็ตาม ทั้งรูปภาพ เพลง วิดีโอ และเอกสารต่างก็ได้รับวันที่นี้จากระบบไฟล์

ใน Windows โปรแกรม File Explorer จะแสดงค่านี้เป็น Date modified และโปรแกรม Windows จะเรียกว่า last write time ส่วนระบบที่ใช้มาตรฐาน POSIX จะเรียกว่า last data modification timestamp

ลักษณะของค่านั้นเป็นอย่างไร

ExifTool แสดงปี เดือน และวันโดยคั่นด้วยเครื่องหมายโคลอน ตามด้วยเวลาและส่วนต่างเขตเวลา เอกสารของ ExifTool แสดงตัวอย่างดังนี้:

  • 2009:10:05 20:40:36-04:00 หมายถึงวันที่ 5 ตุลาคม 2009 เวลา 20:40:36 (8 โมง 40 นาที 36 วินาทีตอนค่ำ)
  • -04:00 ตอนท้ายหมายถึงช้ากว่าเวลา UTC 4 ชั่วโมง และเครื่องหมายบวกหมายถึงเร็วกว่าเวลา UTC

บน Windows ระบบไฟล์ NTFS จะเก็บวันที่ในรูปแบบเวลา UTC เวลาที่คุณเห็นจึงขึ้นอยู่กับเขตเวลาของคอมพิวเตอร์คุณ จากตัวอย่างของ Microsoft ไฟล์ที่บันทึกเวลา 15:00 ตามเวลา Pacific จะแสดงเป็น 18:00 บนคอมพิวเตอร์ที่ตั้งเขตเวลาเป็น Eastern

ระบบไฟล์แบบเก่าที่เป็น FAT จะเก็บเป็นเวลาท้องถิ่นแทน ดังนั้นไฟล์เดียวกันจึงแสดงเวลา 15:00 เหมือนกันทั้งสองที่ FAT ยังเก็บเวลาแก้ไขเป็นช่วงๆ ละ 2 วินาทีด้วย

อะไรที่เปลี่ยนวันที่

วันที่จะแสดงเป็นเวลาปัจจุบันเมื่อโปรแกรมเขียนข้อมูลใหม่ลงในไฟล์ เช่น เมื่อคุณบันทึกเอกสาร การเขียนเมทาดาตาใหม่ลงในไฟล์ เช่น แท็กของรูปภาพ ก็จะเปลี่ยนวันที่เช่นกัน ExifTool จะตั้งค่าวันที่นี้เป็นเวลาปัจจุบันเมื่อเขียนแท็ก เว้นแต่คุณจะใช้ตัวเลือก -P ของโปรแกรม

การอ่านไฟล์จะไม่เปลี่ยนวันที่แก้ไข การอ่านจะเปลี่ยนค่าอีกค่าหนึ่งคือวันที่เข้าถึงล่าสุด (last access date) โปรแกรมที่ใช้คัดลอกไฟล์อาจทำต่างกัน บางโปรแกรมเก็บวันที่แก้ไขเดิมไว้ ในขณะที่บางโปรแกรมให้ไฟล์ที่คัดลอกมีเวลาเป็นปัจจุบัน

คุณสามารถตั้งค่าวันที่นี้เองได้เช่นกัน คำสั่ง touch ของ POSIX ใช้ตั้งวันที่เป็นเวลาปัจจุบัน หรือเป็นเวลาที่คุณระบุ ExifTool สามารถคัดลอกวันที่ถ่ายภาพมาใส่เป็นวันที่แก้ไขได้

วันที่แก้ไขภายในไฟล์

รูปแบบไฟล์จำนวนมากยังเก็บวันที่แก้ไขไว้ภายในไฟล์ด้วย มีเพียงโปรแกรมที่แก้ไขไฟล์เท่านั้นที่อัปเดตค่านี้ได้ จึงอาจแตกต่างจากวันที่ของระบบไฟล์ ตัวอย่างเช่น:

  • ในรูปภาพ JPG แท็ก EXIF ModifyDate หมายเลข ID 0x0132 จะเก็บวันและเวลาที่ไฟล์ถูกเปลี่ยน แท็กแยกต่างหากชื่อ OffsetTime สามารถเก็บข้อมูลเขตเวลาได้
  • ในไฟล์ PDF ข้อมูลเอกสารจะมีรายการ ModDate
  • ในวิดีโอ MP4 และ MOV ส่วนหัวของไฟล์ภาพยนตร์จะเก็บค่า ModifyDate ซึ่งควรถูกเก็บในรูปแบบเวลา UTC

ทำไมมันจึงสำคัญ

Date modified บอกคุณว่าไฟล์ถูกบันทึกล่าสุดเมื่อใด ไม่ใช่ถูกสร้างเมื่อใด สำหรับเวลาที่ถ่ายภาพ ให้ดูที่ Date/Time Original สำหรับเวลาที่ไฟล์ถูกสร้างครั้งแรก ให้ดูที่ Create Date

ค่านี้จะถูกต้องก็ต่อเมื่อเวลาของนาฬิกาบนคอมพิวเตอร์ที่บันทึกไฟล์นั้นถูกต้องเท่านั้น และโปรแกรมยังสามารถตั้งค่าเป็นเวลาใดก็ได้ ดังนั้นจึงไม่สามารถใช้ยืนยันได้ว่าไฟล์ถูกเปลี่ยนจริงเมื่อใด

โปรแกรมสำรองข้อมูลสามารถใช้วันที่นี้เพื่อตรวจหาไฟล์ที่มีการเปลี่ยนแปลงได้ ตัวอย่างเช่น คำสั่ง Robocopy ของ Windows สามารถข้ามไฟล์ตามวันที่แก้ไขล่าสุดได้

คีย์เมตา