获取文件夹和子文件夹中所有文件的列表

如何获取文件夹中所有文件的列表,包括所有子文件夹中的所有文件,并将输出放在文件中?

您可以在命令行上执行此操作,使用-R开关(递归),然后将输出传递到文件,从而:

ls -R > filename1 

这将在当前目录中创建一个名为filename1的文件,其中包含当前目录及其下所有子目录的完整目录列表。

您可以通过指定完整路径来列出当前目录以外的目录,例如:

 ls -R /var > filename2 

将列出/ var中的所有内容,并将结果放在名为filename2的当前目录中的文件中。 只要您具有对目录的读访问权限,这适用于包含root的其他用户拥有的目录。

您还可以使用sudo命令列出您无权访问的目录,例如/ root。 例如:

 sudo ls -R /root > filename3 

将所有内容列在/ root中,将结果放在当前目录中名为filename3的文件中。 由于大多数Ubuntu系统在此目录中没有任何内容,因此filename3将不包含任何内容,但如果确实如此,它将起作用。

安装树

递归ls的替代方法是命令行工具tree ,它提供了很多选项来自定义diplayed输出的格式。 有关所有选项,请参见树的联机帮助页 。

只需将find命令与目录名一起使用即可。 例如,要查看主目录中文件夹和文件夹中的所有文件,请使用

 find ~ 

查看find命令的find手册页 Manpage图标

还可以在终端中使用info find命令查看GNU info页面。

也:

 gvfs-tree /path/to/folder/ 

将使用其他字符为树提供相同的树。

 tree -a 

也显示隐藏文件

 tree -i 

不显示行

  1. 转到要从中获取内容列表的文件夹。
  2. 在列表中选择所需的文件(如果需要整个文件夹,请按Ctrl + A )。
  3. 使用Ctrl + C复制内容。
  4. 打开gedit并使用Ctrl + V粘贴内容。 它将作为列表粘贴,然后您可以保存该文件。

此方法不包括子文件夹,内容。

您还可以使用与Takkat的tree建议相对应的GUI,即Baobab 。 它用于查看文件夹和子文件夹,通常用于分析磁盘使用情况。 如果您使用的是GNOME桌面(通常称为磁盘使用率分析器),您可能已经安装了它。

 sudo apt-get install baobab 

您可以选择一个文件夹并查看其所有子文件夹,同时获取文件夹及其内容的大小,如下面的屏幕截图所示。 您只需单击小向下箭头即可查看文件夹中的子文件夹。 这对于快速了解文件夹中的内容并生成可查看的列表非常有用,但目前它无法将它们导出到文件中。 但是,它已被要求作为function在Launchpad上 。 如果使用gksudo baobab甚至可以使用它来查看根文件系统。

(您还可以使用ls -shR ~/myfolder获取其大小的文件列表,然后将其导出到文件。)

在此输入图像描述