I'm curious as to how the -M operator works. Since Unix doesn't keep track of file creation dates, does -M check for the last modified? So in the example above would the given file be deleted if it wasn't modified in the last 7 days? I'm also assuming that one could use the -M to test directories as well. Is this true? :]
Replies are listed 'Best First'.
Take a look at stat. All the --something operators are just frontends for this function. UN*X keeps track of last access, last modification, and last inode change (often confused with creation time).
-M looks at the mtime (modification time), and subtracts $^T (see perlvar). A better choice might be -C, which looks at ctime (inode change time). Still, that too just looks at the last time you changed something about the file "metadata": creation, permissions, and the like.