Cách chỉnh sửa dấu thời gian với Windows PowerShell

Hướng dẫn sau đây trình bày cách bạn có thể chỉnh sửa dấu thời gian của tệp - tạo, truy cập lần cuối và lần ghi cuối - sử dụng Windows PowerShell.

PowerShell là một phần của bất kỳ phiên bản hiện đại nào của hệ điều hành Windows của Microsoft. Microsoft đã chuyển sang PowerShell khỏi Command Prompt trên Windows 10, nhưng không xóa dấu nhắc lệnh làm như vậy.

Người dùng và quản trị viên Windows 10 có quyền truy cập vào cả hai, nhưng trọng tâm phát triển nằm rõ ràng trên PowerShell.

Mỗi tệp trên Windows và các hệ điều hành khác cũng có một số dấu thời gian được liên kết với nó. Hệ thống tệp theo dõi thời gian tạo tệp, thời gian truy cập lần cuối và thời gian ghi cuối cùng.

Cách chỉnh sửa dấu thời gian với Windows PowerShell

Điều đầu tiên bạn cần làm là khởi chạy một cửa sổ PowerShell. Chạm vào phím Windows, nhập PowerShell và nhấn phím Enter sau đó. Lưu ý rằng điều này sẽ khởi chạy lời nhắc trong tài khoản người dùng hiện tại. Ví dụ: nếu bạn yêu cầu một dấu nhắc nâng cao để chỉnh sửa dấu thời gian tệp của các thư mục mà người dùng có quyền truy cập hạn chế, hãy giữ phím Shift và phím Ctrl bổ sung.

Ba lệnh mà bạn yêu cầu là các lệnh sau:

  • $ (Nhận vật phẩm FILENAME.EXT) .creationtime = $ (NGÀY)
  • $ (Nhận vật phẩm FILENAME.EXT) .lastaccesstime = $ (NGÀY)
  • $ (Nhận vật phẩm FILENAME.EXT) .lastwritetime = $ (NGÀY)

Ba lệnh thay đổi việc tạo, truy cập lần cuối và dấu thời gian ghi cuối cùng của tệp khi bạn chạy chúng.

Lưu ý : Thời gian truy cập lần cuối không được bật theo mặc định trên tất cả các phiên bản Windows được hỗ trợ vì những lo ngại về hiệu suất.

Để cho bạn một số ví dụ:

  • $ (Get-Item test.txt) .creationtime = $ (Ngày nhận)
  • $ (Get-Item test.txt) .lastaccesstime = $ (Ngày nhận "24/24/2011 07:15 sáng")

Lệnh đầu tiên đặt dấu thời gian tạo của tệp text.txt thành ngày và giờ hiện tại. Lệnh thứ hai thay đổi thời gian và ngày truy cập cuối cùng vào ngày 24 tháng 12 năm 2011 lúc 7:15 sáng.

Lưu ý rằng lệnh yêu cầu tệp nằm trong thư mục hiện tại của dấu nhắc PowerShell.

Các lệnh hữu ích

Một khi điều có thể hữu ích là liệt kê các dấu thời gian tệp của thư mục hiện tại trước và sau khi bạn chạy lệnh PowerShell. Điều này giúp dễ dàng tìm thấy các tệp vẫn cần thay đổi và kiểm tra xem các thay đổi đã được áp dụng đúng chưa.

Get-ChildItem-lực lượng | Chế độ chọn đối tượng, Tên, CreationTime, LastAccessTime, LastWriteTime | ft

Lệnh liệt kê tất cả các tệp và thư mục của đường dẫn hiện tại và hiển thị thời gian tạo, thời gian truy cập cuối cùng và thời gian ghi cuối cùng của mỗi mục trong một bảng.

  • -Force trong bối cảnh này bao gồm các tập tin ẩn và hệ thống trong đầu ra.
  • ft là viết tắt của bảng định dạng.

Nếu bạn chỉ cần tạo dấu thời gian, thay vào đó hãy chạy Get-ChildItem -force .

Kịch bản sau đây chạy hoạt động trên tất cả các tệp.

$ redirectfiles = Get-ChildItem -force | Đối tượng ở đâu {! $ _. PSIContainer}

foreach (đối tượng $ trong $ redirectfiles)

{

$ object.CreationTime = ("11/11/2011 12:00:00")

$ object.LastAccessTime = ("11/11/2011 12:00:00")

$ object.LastWritetime = ("11/11/2011 12:00:00")

}

Chỉ cần sao chép và dán nó, và thay đổi nó theo yêu cầu của bạn.

Mẹo: Nếu bạn thích giao diện người dùng đồ họa khi thay đổi dấu thời gian, thay vào đó hãy xem Thay đổi thuộc tính chương trình phần mềm miễn phí.