linux:目录中的最新文件,不包括目录和。档

时间:2011-10-16 21:59:18

标签: linux bash unix directory find

我想在目录中找到最近更改的文件,不包括隐藏文件(以。开头的文件),也不包括目录。

这个问题正朝着正确的方向发展,但不完全符合我的需要:

Linux: Most recent file in a directory

这里的关键是排除目录......

4 个答案:

答案 0 :(得分:11)

就像那里的答案一样,除非没有-A

ls -rt | tail -n 1

请查看man ls以获取更多信息。

要使其排除目录,我们使用-F选项向每个目录添加“/”,然后过滤那些没有“/”的目录:

ls -Frt | grep "[^/]$" | tail -n 1

答案 1 :(得分:3)

这样做你想要的,不包括目录:

stat --printf='%F %Y %n\n' * | sort | grep -v ^directory | head -n 1

答案 2 :(得分:0)

同一个,不是很干净但是:ls -c1 +尾巴,如果你想要=> ls -c1 | tail -1

$ touch a .b
$ ls -c1
a
$ ls -c1a
a
.b
$ touch d
$ ls -c1
d
a
$ ls -c1a
.
d
a
.b
..
$ touch .b
$ ls -c1a
.b
.
d
a
..

如您所见,没有a arg,只会列出可见文件。

答案 3 :(得分:0)

可能与其他帖子中的答案相同,但差异很小(不包括目录) -

ls --group-directories-first -rt | tail -n 1