如何找到今天在Unix/Linux中创建的所有文件?

53 unix linux

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

Aln*_*tak 53

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

find <path> -daystart -ctime 0 -print
Run Code Online (Sandbox Code Playgroud)

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

但请注意,这实际上会列出在最后一天创建修改的文件. find没有选项可以查看文件的真实创建日期.

  • “真正的创建日期”甚至不能作为文件系统存储的信息。 (3认同)

Ank*_*are 34

find . -mtime -1 -type f -print
Run Code Online (Sandbox Code Playgroud)

  • 不要使用反引号; 不要使用`pwd`除了打印(在`pwd`中的p)工作目录.使用`.来引用当前目录. (2认同)
  • 这个答案不正确 - 这显示了过去 24 小时内创建的文件,而不是今天创建的文件 (2认同)

Esp*_*spo 18

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

touch -t `date +%m%d0000` /tmp/$$
find . -type f -newer /tmp/$$
rm /tmp/$$
Run Code Online (Sandbox Code Playgroud)

资源


Bar*_*der 7

经过五月的帖子后,我找到了真正有效的最好的帖子

find $file_path -type f -name "*.txt" -mtime -1 -printf "%f\n"
Run Code Online (Sandbox Code Playgroud)

这仅打印文件名称,如 abc.txt/path/tofolder/abc.txt

也可以玩耍或自定义 -mtime -1

  • 不正确的答案,`-mtime -1` 显示过去 24 小时内创建的文件 (2认同)

小智 6

我用了一些频率:

$ ls -altrh --time-style=+%D | grep $(date +%D)
Run Code Online (Sandbox Code Playgroud)

  • [不要解析 `ls` 的输出](https://mywiki.wooledge.org/ParsingLs)。 (6认同)

小智 5

这对我有用。列出 5 月 30 日在当前目录中创建的文件。

ls -lt | grep 'May 30'
Run Code Online (Sandbox Code Playgroud)

  • [不要解析 `ls` 的输出](https://mywiki.wooledge.org/ParsingLs)。 (4认同)
  • 这仅适用于特定日期,不适用于“今天”。 (3认同)