Tôi đang sử dụng máy Mac. Làm cách nào tôi có thể sử dụng lệnh để xóa tất cả các tệp trong ~/Downloads
đó số ngày được thêm lớn hơn 1 năm?
Tôi đang sử dụng máy Mac. Làm cách nào tôi có thể sử dụng lệnh để xóa tất cả các tệp trong ~/Downloads
đó số ngày được thêm lớn hơn 1 năm?
Câu trả lời:
Đó là một lệnh tương đối đơn giản để xóa các tệp trong một thư mục lớn hơn một năm. Ví dụ, lệnh sau được thực thi trong Terminal
find ~/Downloads/ -type f -mtime +365 -exec rm {} \;
sẽ xóa tất cả các tập tin trong ~/Downloads
thư mục cũ hơn một năm.
find
là lệnh tìm kiếm "công cụ"
-type f
nói tìm những gì cần tìm, trong trường hợp này tập tin
-mtime +365
cho biết rằng thời gian sửa đổi phải lớn hơn 365 ngày
-exec rm {}
chuyển (thực thi) từng mục "tìm thấy" cho lệnh rm
Những gì tôi muốn làm là kiểm tra nó bằng cách loại trừ -exec rm {} \;
phần và đảm bảo tôi sẽ nhận được kết quả chính xác. Khi tôi chắc chắn, tôi chỉ cần thêm nó vào để hoàn thành việc gỡ bỏ.
Một caveat!! Những tệp này không được thêm vào "Thùng rác" của bạn. Lệnh bỏ qua Thùng rác và ngay lập tức bị xóa, vì vậy hãy thận trọng khi sử dụng.
(Cảm ơn người dùng lucasoldaini trong các bình luận bên dưới)
Nếu bạn muốn di chuyển các tệp của mình vào "Thùng rác", chỉ cần thay thế -exec rm {} \;
phần này thành-exec mv {} ~/.Trash \;
Chúng sẽ vẫn còn trong Thùng rác của bạn cho đến lần tiếp theo bạn dọn sạch nó.
Bạn có thể nhận thêm thông tin về mỗi lệnh bằng cách xem trang man của họ:
rm
, bạn có thể di chuyển các tệp ~/.Trash
để ngăn chặn chúng bị xóa ngay lập tức.
Nếu bạn muốn sử dụng Automator, bạn có thể xây dựng một hành động như vậy:
Tìm mục Tìm kiếm - Tải xuống tìm kiếm - Tất cả những điều sau đây là đúng: -Date Tạo không có trong 365 ngày qua.
Nhận các mục tìm kiếm được chọn
Di chuyển các mục Finder vào Thùng rác
Lựa chọn công cụ của tôi là Hazel , một phần mềm đa năng giá rẻ, thực hiện mọi việc với các tệp và thư mục khi chúng khớp với các quy tắc nhất định mà bạn thiết lập. Quy tắc này sẽ di chuyển các tệp không được thêm vào năm ngoái từ thư mục Hämtade filer . Khác với giải pháp dòng lệnh ở trên vì nó chạy hàng ngày, do đó, đây là một giải pháp thiết lập và quên.
kMDItemDateAdded
trong mdls
nhưng tôi khuyên bạn nên giải pháp Hazel để thay thế.