我如何find所有今天在Unix / Linux中创build的文件?

如何查找所有仅在今天创build的文件,而不是在unix / linux中的24小时内创build的文件

在我的Fedora 10系统上,使用findutils-4.4.0-1.fc10.i386

 find <path> -daystart -ctime 0 -print 

-daystart标志告诉它从今天开始计算,而不是从24小时前计算。

但请注意,这将实际列出在最后一天创建修改的文件。 find查看文件的真正创建日期的选项。

 find . -mtime -1 -type f -print 

要查找当前仅修改的所有文件(自上午12点开始),请在当前目录及其子目录中查找:

 touch -t `date +%m%d0000` /tmp/$$ find . -type f -newer /tmp/$$ rm /tmp/$$ 

资源

你不能。 @ Alnitak的答案是最好的,你可以做的,并会给你所有的新文件在它检查的时间段,但时间实际上检查文件的inode(文件描述符)的修改时间,所以也会抓住任何旧的文件(例如)在最后一天重命名。

请记住8月和26日之间有2个空格。其他方面你的find命令不起作用。

 find . -type f -exec ls -l {} \; | egrep "Aug 26"; 

如果你做了一些不小心的事情rsync'd到错误的目录,上述建议工作寻找新的文件,但对我来说,最简单的是连接一个SFTP客户端,如传输,然后按日期排序和删除。

你可以使用findls来完成这个工作:

 find . -type f -exec ls -l {} \; | egrep "Aug 26"; 

它会找到这个目录中的所有文件,显示有用的信息( -l ),并过滤你想要的日期的行…可能有点慢,但在某些情况下仍然有用。