Câu hỏi Làm cách nào để duy trì ngày 'sửa đổi lần cuối' của một tệp?


Tôi đang sao chép các tập tin và thư mục hơn từ một hệ thống tập tin khác (cả hai đều là ext3) thông qua cp trong thiết bị đầu cuối. 'Ngày sửa đổi' trên tất cả các tệp đang được thay đổi thành thời gian hiện tại mặc dù tôi không sửa đổi thư mục hoặc tệp. Tôi muốn cho họ giữ 'ngày sửa đổi cuối cùng' hiện tại của họ thay đổi trong vòng 5 năm qua.

tôi không quan tâm đến việc thay đổi chúng thành một ngày cụ thể như đã mô tả câu hỏi trước đó, nhưng để duy trì ngày 'sửa đổi lần cuối' hiện tại.

EDIT: Điều này vẫn còn áp dụng cho các phiên bản của ubuntu 12.04+ và mới hơn


4
2018-06-24 16:30


gốc




Các câu trả lời:


cp --preserve=timestamps <source> <destination>

Nếu bạn đang sao chép đệ quy, bạn có thể sử dụng:

cp -a <source> <destination>

Từ cp  trang thủ công:

-a, --archive
       same as -dR --preserve=all

-d     same as --no-dereference --preserve=links

-R, -r, --recursive
       copy directories recursively

--preserve[=ATTR_LIST]
       preserve  the specified attributes (default: mode,ownership,timestamps),
       if possible additional attributes: context, links, xattr, all

4
2018-06-24 16:33



Cảm ơn, tôi đọc qua trang người quản lý cp một lần nữa và tìm thấy nó là tốt! Sẽ đánh dấu mục này là câu trả lời khi tôi đủ điều kiện. Đối với bất kỳ ai quan tâm, tham số p, một phím tắt của --preserve cũng thực hiện điều này, cũng như chế độ và quyền sở hữu. - Will.
'cp -p' hoạt động và đơn giản nhất. Từ trang người đàn ông: -p giống như --preserve = chế độ, quyền sở hữu, dấu thời gian. Cũng rsync -a cho chế độ lưu trữ. - gaoithe