linux如何查看最近修改的文件
2个回答
展开全部
下面用不同的方式只列出所有你今天创建或修改的文件(直接或间接)。
1、 使用 ls 命令,只列出你的 home 文件夹中今天的文件。
# ls -al --time-style=+%D | grep 'date +%D'
其中:
-a - 列出所有文件,包括隐藏文件
-l - 启用长列表格式
--time-style=FORMAT - 显示指定 FORMAT 的时间
+%D - 以 %m/%d/%y (月/日/年)格式显示或使用日期
在Linux中找出最近的文件
此外,你使用可以 -X 标志来按字母顺序对结果排序:
# ls -alX --time-style=+%D | grep 'date +%D'
你也可以使用 -S 标志来基于大小(由大到小)来排序:
# 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 这一天修改的文件:
# 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"
1、 使用 ls 命令,只列出你的 home 文件夹中今天的文件。
# ls -al --time-style=+%D | grep 'date +%D'
其中:
-a - 列出所有文件,包括隐藏文件
-l - 启用长列表格式
--time-style=FORMAT - 显示指定 FORMAT 的时间
+%D - 以 %m/%d/%y (月/日/年)格式显示或使用日期
在Linux中找出最近的文件
此外,你使用可以 -X 标志来按字母顺序对结果排序:
# ls -alX --time-style=+%D | grep 'date +%D'
你也可以使用 -S 标志来基于大小(由大到小)来排序:
# 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 这一天修改的文件:
# 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"
展开全部
atime:访问时间(access time),指的是文件最后被读取的时间,可以使用touch命令更改为当前时间;
ctime:变更时间(change time),指的是文件本身最后被变更的时间,变更动作可以使chmod、chgrp、mv等等;
mtime:修改时间(modify time),指的是文件内容最后被修改的时间,修改动作可以使echo重定向、vi等等;
root@localhost:~/xly# find . -mtime -1
.
./aaaa
root@localhost:~/xly# touch bbbbb
root@localhost:~/xly# find . -mtime -1
.
./bbbbb
./aaaa
-1表示1天内,+1表示1天前
ctime:变更时间(change time),指的是文件本身最后被变更的时间,变更动作可以使chmod、chgrp、mv等等;
mtime:修改时间(modify time),指的是文件内容最后被修改的时间,修改动作可以使echo重定向、vi等等;
root@localhost:~/xly# find . -mtime -1
.
./aaaa
root@localhost:~/xly# touch bbbbb
root@localhost:~/xly# find . -mtime -1
.
./bbbbb
./aaaa
-1表示1天内,+1表示1天前
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |