我正在寻找一种方法来列出目录中的所有文件,不包括目录本身,以及这些子目录中的文件。
所以,如果我有:
./test.log
./test2.log
./directory
./directory/file2
我想要一个返回的命令:./ test.log ./test2.log,没有别的。
答案 0 :(得分:55)
如果您想要test.log
,test2.log
和file2
,那么:
find . -type f
如果您不想file2
,那么:
find . -maxdepth 1 -type f
答案 1 :(得分:13)
如果您还需要列出符号链接,管道,设备文件和文件系统的其他特定元素,则应使用:
find -maxdepth 1 -not -type d
这将列出除目录之外的所有内容。
答案 2 :(得分:3)
使用find很简单:
find . -maxdepth 1 -type f
答案 3 :(得分:0)
find . -type f
答案 4 :(得分:0)
find /some/directory -type f
答案 5 :(得分:0)
$ find . -type f -print
每个文件都在自己的行上。您必须位于要搜索的目录中。
答案 6 :(得分:-1)
还有一个选择
ls -ltr | grep ^d