ls -l|grep [DATE]
其中[DATE]为你想要找的那天,格式见ls -l的输出。
比如想找/tmp下修改时间为2007年8月15日的文件,如下 *** 作:
ls -l /tmp
输出为:
drwx------ 2 youran youran 4096 2007-08-27 11:54 virtual-youran.1w2lZh
drwx------ 2 youran youran 4096 2007-08-27 23:22 virtual-youran.HdRfdr
drwx------ 2 youran youran 4096 2007-08-17 14:45 virtual-youran.JYuHxo
drwx------ 2 youran youran 4096 2007-08-26 10:52 virtual-youran.kDJHWC
drwx------ 2 youran youran 4096 2007-08-15 21:02 virtual-youran.KVpFVO
drwx------ 2 youran youran 4096 2007-08-28 09:51 virtual-youran.VL7WSV
drwxrwxrwt 2 root root4096 2007-08-15 18:17 VMwareDnD
drwx------ 2 root root4096 2007-08-15 18:21 vmware-root
prw------- 1 root root 0 2007-08-15 18:22 vmware-root.1
drwx------ 2 youran youran 4096 2007-08-28 11:47 vmware-youran
prw------- 1 youran youran 0 2007-08-15 18:21 vmware-youran.1
可以看出ls -l日期的显示方式是YYYY-MM-DD,所以就可以这样写:
ls -l|grep 2007-08-15
输出为:
virtual-youran.KVpFVO
drwxrwxrwt 2 root root4096 2007-08-15 18:17 VMwareDnD
drwx------ 2 root root4096 2007-08-15 18:21 vmware-root
prw------- 1 root root 0 2007-08-15 18:22 vmware-root.1
prw------- 1 youran youran 0 2007-08-15 18:21 vmware-youran.1
就把2007年8月15日的所有文件列出来了。
find . -type d -name xxx搜索当前目录(包括子目录)下,名字为xxx的目录
ls不能“只”显示3天前的文件,ls -lt 会列出所有的文件,及其时间。
还是要用find来找3天前的文件
find . -type f -ctime +3
就会列出当前目录(包括子目录下),三天前改动的文件。
可以使用find命令来查找多少天前修改的文件
根据文件时间戳进行搜索
find . -type f 时间戳
UNIX/Linux文件系统每个文件都有三种时间戳:
访问时间(-atime/天,-amin/分钟):用户最近一次访问时间。
修改时间(-mtime/天,-mmin/分钟):文件最后一次修改时间。
变化时间(-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间。
搜索最近七天内被访问过的所有文件
find . -type f -atime -7搜索恰好在七天前被访问过的所有文件
find . -type f -atime 7搜索超过七天内被访问过的所有文件
find . -type f -atime +7搜索访问时间超过10分钟的所有文件
find . -type f -amin +10找出比file.log修改时间更长的所有文件
find . -type f -newer file.log欢迎分享,转载请注明来源:内存溢出
评论列表(0条)