Delete Old Files - Remove Files by Date

Cleaning Old Files in Linux with the Find Command
Maintaining a tidy file system is crucial, particularly when dealing with directories that accumulate numerous files over time, such as log directories. Linux provides a straightforward method for removing outdated files.
The process involves utilizing the find command to locate files exceeding a specified age, followed by the –exec command to delete them. While the –delete command exists, it can encounter limitations when handling a large number of files.
Find Command Syntax
The basic syntax for this operation is as follows:
find /path/to/files* -mtime +5 -exec rm {} ;
It’s important to ensure there are spaces between rm, {}, and the semicolon (;).
Understanding the Command
- find: This is the primary command used for locating files.
- /path/to/files*: This specifies the directory where the search will be conducted. The asterisk (*) acts as a wildcard, matching any files within that directory.
- -mtime +5: This option filters files based on their modification time. '+5' indicates files modified more than 5 days ago.
- -exec rm {} ;: This executes the rm (remove) command on each file found. The {} is a placeholder that gets replaced with the filename.
This method is broadly compatible across various Unix-like operating systems.
Effectively managing file age through this command helps prevent disk space exhaustion and maintains system performance.