Bạn đã bao giờ cần dọn dẹp một số tệp cũ ra khỏi một thư mục chưa? Điều này đặc biệt hữu ích khi bạn đang cố gắng giữ một thư mục log khỏi quá cồng kềnh với các tập tin, và Linux làm cho nó dễ dàng để dọn sạch rác.
Chúng tôi sẽ chỉ sử dụng lệnh find để tìm kiếm tất cả các tệp cũ hơn một ngày nhất định và sau đó sử dụng lệnh –exec để xóa chúng. Bạn có thể sử dụng lệnh –xoá thay thế, nhưng bạn sẽ kết thúc với một đối số tối đa khi có quá nhiều tệp.
Tìm cú pháp lệnh
find /path/to/files* -mtime +5 -exec rm {};
Lưu ý rằng có khoảng cách giữa rm, {} và;
Giải thích cho lệnh
- Đối số đầu tiên là đường dẫn đến các tệp. Đây có thể là đường dẫn, thư mục hoặc ký tự đại diện như trong ví dụ trên. Tôi sẽ khuyên bạn nên sử dụng đường dẫn đầy đủ, và chắc chắn rằng bạn chạy lệnh mà không có lệnh rm exec để đảm bảo rằng bạn đang nhận được kết quả đúng.
-
Đối số thứ hai, -mtime, được sử dụng để chỉ định số ngày cũ mà tệp đó là. Nếu bạn nhập +5, tệp sẽ tìm thấy tệp cũ hơn 5 ngày.
- Đối số thứ ba, -exec, cho phép bạn truyền vào một lệnh như rm. Các {}; ở cuối là cần thiết để kết thúc lệnh.
Điều này khá nhiều hoạt động trên bất kỳ phân phối ‘nix nào.