linux find命令&mtime参数用法 1.当前时间24小时—当前时间(昨天-今天) #find . -mtime 0 2.当前时间48小时前–当前时间24小时前(前天-昨天) #find . -mtime 1 3.当前时间48小时前(2天前) #find . -mtime +1 4.当前时间24小时–当前时间(昨天-今天) #find . -mtime -1
N * 24 +1 内表示 1天(1 * 24) +24小时以外… +0 才表示 当天(0 * 24) +24小时以外 1 表示 1 * 24 + 24 到 24 之间… 0 表示 0 * 24 + 24 到 0 之间… -1 表示 0 * 24 +24 内,甚至为未来时间…
mtime参数的理解应该如下: -mtime n 按照文件的更改时间来找文件,n为整数。
n 表示文件更改时间距离为n天 -n 表示文件更改时间距离在n天以内 +n 表示文件更改时间距离在n天以前 例:
-mtime 0 表示文件修改时间距离当前为0天的文件,即距离当前时间不到1天(24小时)以内的文件。 -mtime 1 表示文件修改时间距离当前为1天的文件,即距离当前时间1天(24小时-48小时)的文件。 -mtime+1 表示文件修改时间为大于1天的文件,即距离当前时间2天(48小时)之外的文件 -mtime -1 表示文件修改时间为小于1天的文件,即距离当前时间1天(24小时)之内的文件 为什么-mtime+1 表示文件修改时间为大于1天的文件,即距离当前时间48小时之外的文件,而不是24小时之外的呢? 因为n值只能是整数,即比1大的最近的整数是2,所以-mtime+1不是比当前时间大于1天(24小时),而是比当前时间大于2天(48小时)。