如何在Linux中找出最近或今天被修改的文件

简介:

在本文中,我们将解释两个简单的命令行小技巧,它可以帮你只列出所有的今天的文件。

Linux 用户在命令行上遇到的常见问题之一是定位具有特定名称的文件,如果你知道确定的文件名则可能会容易得多。

不过,假设你忘记了白天早些时候创建的文件的名称(在你包含了数百个文件的 home 文件夹中),但现在你有急用。

下面用不同的方式只列出所有你今天创建或修改的文件(直接或间接)。

1、 使用 ls 命令,只列出你的 home 文件夹中今天的文件。

 
 
  1. # ls -al --time-style=+%D | grep 'date +%D' 

其中:

  • -a - 列出所有文件,包括隐藏文件
  • -l - 启用长列表格式
  • --time-style=FORMAT - 显示指定 FORMAT 的时间
  • +%D - 以 %m/%d/%y (月/日/年)格式显示或使用日期   

在Linux中找出最近的文件

在Linux中找出最近的文件

此外,你使用可以 -X 标志来按字母顺序对结果排序:

 
 
  1. # ls -alX --time-style=+%D | grep 'date +%D' 

你也可以使用 -S 标志来基于大小(由大到小)来排序:

 
 
  1. # ls -alS --time-style=+%D | grep 'date +%D' 

2、 另外,使用 find 命令会更灵活,并且提供比 ls 更多的选项,可以实现相同的目的。

  • -maxdepth 级别用于指定在搜索操作的起点下(在这个情况下为当前目录)的搜索层级(子目录层级数)。
  • -newerXY,用于所寻找的文件的时间戳 X 比参照文件的时间戳 Y 更新一些的文件。 X 和 Y 表示以下任何字母: - a - 参照文件的访问时间 - B - 参照文件的创建时间 - c - 参照文件的 inode 状态改变时间 - m - 参照文件的修改时间 - t - 直接指定一个绝对时间

下面的命令意思是只找出 2016-12-06 这一天修改的文件:

 
 
  1. # find . -maxdepth 1 -newermt "2016-12-06"  

在 Linux 中找出今天的文件

在 Linux 中找出今天的文件

重要:在上面的 find 命令中使用正确的日期格式作为参照时间,一旦你使用了错误的格式,你会得到如下错误:

 
 
  1. # find . -maxdepth 1 -newermt "12-06-2016" 
  2. find: I cannot figure out how to interpret '12-06-2016' as a date or time 

或者,使用下面的正确格式:

 
 
  1. # find . -maxdepth 1 -newermt "12/06/2016" 
  2. 或者 
  3. # find . -maxdepth 1 -newermt "12/06/16" 

在 Linux 中找出今天修改的文件

在 Linux 中找出今天修改的文件


在本文中,我们解释了如何使用 ls 和 find 命令帮助只列出今天的文件。 请使用以下反馈栏向我们发送有关该主题的任何问题或意见。 你也可以提醒我们其他可以用于这个目的的命令。





作者:Aaron Kili
来源:51CTO
目录
相关文章
|
18天前
|
Linux Shell
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
72 1
|
22天前
|
Linux 数据安全/隐私保护 Windows
Linux入门指南:linux权限究竟是什么?和文件有什么关系?
Linux入门指南:linux权限究竟是什么?和文件有什么关系?
30 0
|
24天前
|
算法 Linux C++
【Linux系统编程】解析获取和设置文件信息与权限的Linux系统调用
【Linux系统编程】解析获取和设置文件信息与权限的Linux系统调用
29 0
|
17天前
|
人工智能 安全 Linux
【Linux】Linux之间如何互传文件(详细讲解)
【Linux】Linux之间如何互传文件(详细讲解)
|
28天前
|
Shell Linux C语言
【Shell 命令集合 系统设置 】Linux 创建Kickstart文件mkkickstart命令 使用指南
【Shell 命令集合 系统设置 】Linux 创建Kickstart文件mkkickstart命令 使用指南
31 0
|
28天前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
48 0
|
1天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
9 0
|
3天前
|
Linux Shell 开发工具
Linux文件常用操作
Linux文件常用操作(几乎覆盖所有日常使用)
58 0
|
4天前
|
Linux 内存技术 Perl
【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件
【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件
|
10天前
|
Linux
linux 超过4个G的文件传不上去的解决办法
linux 超过4个G的文件传不上去的解决办法
9 0