วันที่สร้างผิดสำหรับไฟล์ใน Windows เมื่อทำการคัดลอกไฟล์หากไฟล์นั้นมีอยู่แล้ว


9

ฉันมีปัญหาเมื่อคัดลอกไฟล์ (หรือสร้างไฟล์ใหม่) ใน Windows 7 หากฉันคัดลอกไฟล์ฉันคาดว่าวันที่สร้างจะถูกต้อง แต่บางครั้งก็ไม่เป็นเช่นนั้น โดยปกติแล้วจะใช้งานได้ แต่นี่เป็นตัวอย่างเมื่อไม่สามารถใช้งานได้:

ฉันมีสองโฟลเดอร์บนเดสก์ท็อปของฉันโฟลเดอร์ 1 และโฟลเดอร์ 2 ฉันสร้างไฟล์ข้อความใหม่ในโฟลเดอร์ 1 เรียกว่า 852pm (หรือเมื่อใดก็ตามที่มันถูกสร้างขึ้น) ฉันคัดลอกไฟล์ไปที่โฟลเดอร์ 2 ไฟล์ที่คัดลอกมีวันที่สร้างที่ถูกต้อง ฉันลบไฟล์ที่คัดลอกรอหนึ่งนาทีและคัดลอกอีกครั้ง วันที่สร้างไม่ถูกต้อง วันที่สร้างมาจากไฟล์ที่ถูกลบ

ฉันพยายามล้างถังรีไซเคิลก่อน แต่มันไม่ทำงาน และบางครั้งการสร้างไฟล์ใหม่ด้วยชื่อเดียวกันจะแสดงวันที่สร้างเก่า (และด้วยการแก้ไขวันที่ใหม่)

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

คำตอบ:


11

ไฟล์ทันเนล

การอ้างอิงบทความ KB อย่างเป็นทางการWindows NT มีความสามารถในการทันเนลของระบบไฟล์ :

สิ่งนี้เกิดขึ้นหลังจากการลบหรือเปลี่ยนชื่อและแนะนำรายการไดเรกทอรีใหม่ด้วย meta-info นั้น (หากมีการสร้างหรือเปลี่ยนชื่อเกิดขึ้นจะทำให้ไฟล์ของชื่อนั้นปรากฏขึ้นอีกครั้งในช่วงเวลาสั้น ๆ )

แนวคิดคือการเลียนแบบพฤติกรรมของโปรแกรม MS-DOS ที่คาดหวังเมื่อพวกเขาใช้วิธีการบันทึกอย่างปลอดภัย พวกเขาคัดลอกข้อมูลที่แก้ไขไปยังไฟล์ชั่วคราวลบต้นฉบับและเปลี่ยนชื่อชั่วคราวเป็นต้นฉบับ นี่น่าจะเป็นไฟล์ต้นฉบับเมื่อสร้างเสร็จ Windows ทำการสร้างช่องสัญญาณบนทั้งระบบไฟล์ FAT และ NTFS เพื่อให้มั่นใจว่าชื่อไฟล์แบบยาว / สั้นจะถูกเก็บไว้เมื่อแอปพลิเคชัน 16 บิตทำการบันทึกอย่างปลอดภัย

บทความนี้ยังอธิบายถึงวิธีเพิ่มเวลาแคชหรือปิดการใช้งานความสามารถในการขุดอุโมงค์ทั้งหมด

ปิดใช้งานการขุดอุโมงค์ไฟล์

  1. กดWin+ Rชนิดregeditและจากนั้นคลิกตกลง

  2. นำทางไปยังรีจิสตรีคีย์ต่อไปนี้:

    HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ FileSystem
    
  3. คลิกขวาที่พื้นที่ว่างในบานหน้าต่างด้านขวาและเลือกใหม่> DWORD (32 บิต) มูลค่า

  4. MaximumTunnelEntriesชื่อค่าใหม่
    ตรวจสอบให้แน่ใจว่าได้ตั้งค่าเป็น0: ซึ่งหมายความว่าจะไม่มีการสร้างรายการอุโมงค์

ข้อมูลเพิ่มเติม

ชื่อ "อุโมงค์" มาจากกลศาสตร์ควอนตัม (เจ๋งมาก):

นักพัฒนาที่รับผิดชอบในการติดตั้งช่องสัญญาณใน Windows 95 ได้ดำเนินการเปรียบเทียบกับกลศาสตร์ควอนตัม: ชิ้นส่วนของข้อมูลเกี่ยวกับไฟล์ที่ถูกลบหรือถูกเปลี่ยนชื่อเมื่อเร็ว ๆ นี้ถูกเก็บไว้ในโครงสร้างข้อมูลที่เรียกว่า "ควาร์ก"

ที่มา: ประวัติ apocryphal ของการสร้างช่องสัญญาณระบบไฟล์

อ่านเพิ่มเติม


0

คุณสามารถอัปเดตเวลาสร้างด้วยคำสั่งนี้ด้วยตนเอง:

powershell (ls YourFile.txt).CreationTime = Get-Date

... และเหมือนกันในไฟล์แบทช์:

call powershell "(ls YourFile.txt).CreationTime = Get-Date"
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.