如何将文件夹中包含的所有文件的名称提取到 .txt 文件中?

How to extract name of all files contained in a folder into a .txt file?

我想将文件夹中包含的所有文件的名称提取到 .txt 文件中,例如:当我们在终端中键入 ls 命令时,它会显示所有文件和文件夹名称的列表。 我们可以将所有这些名称存储在一个 .txt 文件中吗?

您可以将 ls 命令的输出重定向到带有 > 的文件,如下所示:

ls > files.txt

请注意,这将覆盖 files.txt 之前的任何内容。要追加,请使用 >>,而不是像这样:

ls >> files.txt

通过使用 > 字符,可以将命令的输出写入命名文件。例如,

ls > list.txt

这将直接post ls 命令的输出到文件list.txt 中。但是,这也会 覆盖 list.txt 中的所有内容。要附加到文件末尾而不是覆盖,请使用 >>:

ls >> list.txt

这将保留 list.txt 之前的内容,并将 ls 的输出添加到文件末尾。

如果您真的关心 文件 并且想跳过目录,我会使用 find。

find . -type f --mindepth 1 --maxdepth 1 >> list.txt

请注意,此列表还将包含 list.txt,因为它是在当前目录中生成 find 之前创建的。

使用 find 而不是 ls 的优点是它将包含 "hidden" 个文件(名称中以 . 开头的文件)。