如何查找当前在Unix/Linux中创建的所有文件?

如何查找当前在Unix/Linux中创建的所有文件?,linux,unix,Linux,Unix,如何在unix/linux中查找仅在今天而不是24小时内创建的所有文件,以查找当前目录及其子目录中仅在今天修改的所有文件(仅从一天开始,即上午12点): touch -t `date +%m%d0000` /tmp/$$ find . -type f -newer /tmp/$$ rm /tmp/$$ 在我的Fedora 10系统上,带有findutils-4.4.0-1.fc10.i386: find <path> -daystart -ctime 0 -print find-

如何在unix/linux中查找仅在今天而不是24小时内创建的所有文件,以查找当前目录及其子目录中仅在今天修改的所有文件(仅从一天开始,即上午12点):

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

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

find <path> -daystart -ctime 0 -print
find-daystart-ctime 0-打印
-daystart
标志告诉它从今天开始计算,而不是从24小时前开始计算


但是请注意,这实际上会列出在最后一天创建或修改的文件<代码>查找没有查看文件真实创建日期的选项。

您不能@Alnitak的答案是您所能做的最好的,它会在检查的时间段内为您提供所有新文件,但是
-ctime
实际上会检查文件inode(文件描述符)的修改时间,因此也会捕获任何旧文件(例如)在最后一天重命名。

您可以使用
find
ls
完成以下操作:

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

它将查找此目录中的所有文件,显示有用的信息(
-l
),并过滤带有您想要的日期的行。。。它可能有点慢,但在某些情况下仍然有用。

请记住在8月和26日之间有2个空格。另外,find命令将不起作用

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

如果您不小心将文件重新同步到了错误的目录,以上建议可以帮助您查找新文件,但对我来说,最简单的方法是连接SFTP客户端,如Transmit,然后按日期排序并删除。

我经常使用它:

$ ls -altrh --time-style=+%D | grep $(date +%D)

使用ls或find获取今天创建的所有文件

使用ls:
ls-ltr | grep“$(日期'+%b%e')”


使用find:
cd$YOUR_目录
<代码>查找-ls 2>/dev/null | grep“$(日期'+%b%e')”

在浏览了5月份的帖子后,我找到了最有效的一个

find $file_path -type f -name "*.txt" -mtime -1 -printf "%f\n"
这只打印文件名,如
abc.txt
不是
/path/tofolder/abc.txt


还可以使用
-mtime-1

进行游戏或自定义,这对我很有用。列出5月30日在当前目录中创建的文件

ls -lt | grep 'May 30'

“真正的创建日期”甚至不能作为文件系统存储的信息使用;除了在工作目录中打印(这是
pwd
中的p)外,不要使用
pwd
。使用
引用当前目录。此答案不正确-显示过去24小时内创建的文件,而不是今天创建的文件mtime用于修改文件,OP ask for created file:使用-ctime代替标题正确答案,
-mtime-1
显示过去24小时内创建的文件我希望这就是为什么我说玩-mtime这应该是一个注释,而不是答案这只适用于特定日期,而不是“今天”。