列出文件但排除Unix中的某些目录

时间:2017-07-04 13:44:30

标签: linux ls

我试图以递归方式列出具有子文件夹的文件夹中的文件,但试图避免进入一个文件夹,因为它们是重复的。

这是我运行的命令,但它没有做任何事情。

ls -lR /opt/elk/data/syslogs | grep -v .log. | grep --exclude-dir="cam" * > /tmp/logs.log

如果有任何改变我可以做到吗?

感谢。

1 个答案:

答案 0 :(得分:2)

find的不同版本的选项差异很大,但您可以尝试:

find /opt/elk/data/syslogs -name cam -prune -o -print

在RHEL上,您可能找到了gnu,如果您想要文件大小和修改时间,您可以尝试:

find /opt/elk/data/syslogs -name cam -prune -o -printf "%p %s %t\n"