“ls”在结果中返回子目录吗?

“ls”在结果中返回子目录吗?

简化的情况:我位于~。有一个文件夹~/folder,里面有很多很多名为、等的.txt文件。1.txt2.txt

我想生成一个file_list.txt里面的~内容是:

folder/1.txt
folder/2.txt
etc...

如果我做

ls folder>file_list.txt

我明白了

1.txt
2.txt
etc.

我如何才能列出该文件夹?我刚刚在 python 中做了一个解决方法循环,​​但是当我拥有的文件数量这么大时,速度有点慢。

答案1

你不需ls要这样做,外壳程序自己的通配符将完成你所追求的事情:

printf "%s\n" folder/* > file_list.txt

答案2

另一种方法是使用find查找所有“常规”(不是目录、设备等)

find folder -type f > file_list.txt

相关内容