快速找到最近修改的文件!

导读 在本文中,我们将解释两个简单的命令行小技巧,它可以帮你只列出所有的今天的文件。Linux 用户在命令行上遇到的常见问题之一是定位具有特定名称的文件,如果你知道确定的文件名则可能会容易得多。

不过,假设你忘记了白天早些时候创建的文件的名称(在你包含了数百个文件的home文件夹中),但现在你有急用。下面用不同的方式只列出所有你今天创建或修改的文件(直接或间接)。

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

# ls -al --time- grep 'date +%D'

其中:
-a– 列出所有文件,包括隐藏文件
-l– 启用长列表格式
>–time-padding: 4px 8px; font-size: 12px; border-radius: 3px; color: #c7254e; background-color: #f9f2f4;”>+%D– 以 >%m/%d/%y(月/日/年)格式显示或使用日期

在Linux中找出最近的文件

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

# ls -alX --time- grep 'date +%D'

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

# ls -alS --time- grep 'date +%D'

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

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

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

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

在 Linux 中找出今天的文件

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

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

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

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

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


via: http://www.tecmint.com/find-recent-modified-files-in-linux/

作者:Aaron Kili 译者:geekpi 校对:jasminepeng

本文由 LCTT 原创编译,Linux中国 荣誉推出

本文原创地址:https://www.linuxprobe.com/find-refix.html编辑:public,审核员:暂无

本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如果侵犯你的利益,请发送邮箱到 [email protected],我们会很快的为您处理。
超哥软件库 » 快速找到最近修改的文件!