Hiển thị tệp từ 2 ngày qua trên hệ thống ntfs được gắn?


8

Chính xác lệnh hiển thị các tệp dưới 2 ngày là gì? Tôi nghĩ về một cái gì đó như thế này:

$ find / -mtime -2

... nhưng tôi không chắc cách in ngày của các tập tin được tìm thấy. Mục tiêu của tôi là tìm tệp trên hệ thống ntfs được gắn mới hoặc đã thay đổi trong những ngày qua.

Hơn nữa, nó sẽ rất hữu ích để sắp xếp các kết quả từ mới đến cũ nhất. Điều đó có thể không?


Nếu bạn chỉnh sửa câu hỏi của mình để hỏi điều gì khác, ít nhất bạn nên thông báo cho những người trả lời một cách tự tin rằng câu trả lời của họ không còn giá trị, vì khách truy cập mới sẽ chủ yếu bỏ phiếu về trải nghiệm hiện tại của họ và không khó kiểm tra lịch sử. Hơn nữa, thêm các yêu cầu bổ sung sau là phong cách xấu IMHO. Mở một câu hỏi mới cho điều đó. Với các yêu cầu trong tâm trí, mọi người có thể đã chọn một cách tiếp cận khác.
người dùng không xác định

Đó chỉ là một lỗi chính tả trong văn bản câu hỏi của tôi. Bản thân chủ đề đã đúng. Về cơ thể, tôi đã viết "trẻ hơn" thay vì "già". Ví dụ mã của tôi không thay đổi quá. Nhưng về cơ bản bạn đúng.
Bevor

Câu trả lời:


10

Các tệp được tạo hoặc sửa đổi ít hơn 48 giờ trước được
sắp xếp từ mới nhất đến cũ nhất:

find / -mtime -2 -printf "%T@" -ls | sort

Tôi đã tìm thấy %T@từ man find: thời gian sửa đổi lần cuối (giây kể từ epoch)


Tôi muốn xem ngày của các tệp được tìm thấy, không chỉ các tệp. Tôi cũng cập nhật câu hỏi, bởi vì nó sẽ rất hữu ích để sắp xếp các kết quả từ mới nhất đến cũ nhất.
Bevor

Lệnh cuối cùng là những gì tôi đang tìm kiếm, cảm ơn.
Bevor

Tôi cần "trẻ hơn" 2 ngày, vì vậy từ hôm nay đến hai ngày trước (câu hỏi của tôi lúc đầu đã sai, tôi đã viết "cũ hơn", lỗi của tôi) nhưng nó hoạt động khi tôi đặt -2 thay vì +2. Tôi đã không thử nghiệm nó trên ntfs bây giờ, tôi phải đợi đến ngày mai cho điều đó, nhưng tôi nghĩ nó cũng hoạt động ở đó (như trên Ubuntu địa phương của tôi). Nếu không, tôi sẽ cho bạn biết.
Bevor

Hoạt động hoàn hảo :)
Bevor 8/212

Tuyệt vời :-D Hẹn gặp lại
olibre

2

Nếu bạn chuyển sang xargs, thì bạn có thể dễ dàng điều chỉnh các tùy chọn đầu ra / định dạng lsđể hiển thị ngày, sắp xếp theo ngày, v.v.

find / -type f -mtime -2 -print0 | xargs -0 ls -lt


1

Điều này dễ dàng hơn trong zsh, nhờ vào vòng loại toàn cầu của nó .

print -l /**/*~/(proc|dev|sys)/*(m-2om)

Này liệt kê tất cả các file dưới /, excepts cho các tập tin dưới /prochoặc /devhoặc /sys, mà đã được sửa đổi trong vòng 2 ngày qua ( m-2). Các tệp được liệt kê theo thứ tự thời gian đảo ngược của thời gian sửa đổi ( om), một trên mỗi dòng ( print -l).

Nếu bạn cũng muốn liệt kê siêu dữ liệu tệp, bạn không cần phải sắp xếp trong trình bao, chỉ lọc. Bạn có thể chạy vào giới hạn độ dài dòng lệnh phụ thuộc vào nền tảng nếu có quá nhiều tệp phù hợp.

ls -dlt /**/*~/(proc|dev|sys)/*(m-2)

Nếu bạn chỉ muốn khớp các tệp thông thường, hãy thêm .vào trong ngoặc đơn.

Chỉ với các công cụ POSIX, bạn có thể sử dụng ls -dltđể sắp xếp và findtạo danh sách tệp. Một lần nữa, bạn có thể chạy vào giới hạn độ dài dòng lệnh phụ thuộc vào nền tảng nếu có quá nhiều tệp phù hợp. Nếu bạn muốn chỉ khớp các tệp thông thường, hãy thêm -type ftrước hoặc sau mtime -2.

find / -mtime -2 -exec ls -dlt {} +

1

(Lưu ý: Một câu của câu hỏi ban đầu được hỏi về ngày tháng, cũ hơn 2 ngày trong văn bản, trong khi tiêu đề lại có cách khác. Yêu cầu sắp xếp đầu ra cũng được giới thiệu sau).

find / -mtime -2 -ls 

Với +2, bạn sẽ thấy các tệp cũ hơn 2 ngày, với -2 trẻ hơn hai ngày và chỉ với các tệp cũ 2: 2 ngày.

Với -ls bạn có được đầu ra giống như ls, nơi bạn có thể xem ngày của tệp.

find / -ctime -2 -ls 

Với ctime thay vì mtime, bạn có được ngày tạo thay vì ngày sửa đổi, nhưng tùy thuộc vào khả năng và cài đặt của hệ thống tệp trong / etc / fstab, điều này có thể hoặc không thể hoạt động.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.