如何将文件夹中的文件列表发送到Linux中的txt文件

Posted

技术标签:

【中文标题】如何将文件夹中的文件列表发送到Linux中的txt文件【英文标题】:How to send list of file in a folder to a txt file in Linux 【发布时间】:2011-05-05 22:59:38 【问题描述】:

我对 Linux(在本例中为 CentOS)相当陌生。我有一个文件夹,里面有大约 2000 个文件。理想情况下,我想在命令提示符下执行一个命令,将所有文件的名称写到一个 txt 文件中。

如果必须,我也可以编写一个实际的程序来执行此操作,我只是在想可能有一种方法可以简单地从命令提示符处执行此操作。

【问题讨论】:

注意这一点,文件名可能包含各种棘手的字符。例如。换行 【参考方案1】:

你可以使用

ls > filenames.txt

(通常,使用“Terminal”、“shell”或“Bash”启动 shell。)您可能需要先使用 cd 进入该文件夹,或者您可以使用 ls ~/docs > filenames.txt

【讨论】:

谢天谢地,我在写一个小 bash 脚本之前搜索了这个! 对于绝对路径printf '%s\n' "$PWD"/* >filenames.txt 对于这种琐碎用途之外的任何事情,您可能应该避免使用ls。见mywiki.wooledge.org/ParsingLs 如果我想将每个文件名保存在双引号“”中并且每个这样的“”用逗号分隔?请告诉如何做到这一点。即如果文件名是 a,b,c,d,e;我希望它们以"a","b","c","d","e" 的形式保存到文本文件中【参考方案2】:

如果只需要一个目录中直接包含的常规文件的名称(假设它是~/dirs),您可以这样做

find ~/docs -type f -maxdepth 1 > filenames.txt

【讨论】:

如何忽略某些文件,例如备份文件(文件名中带有“~”后缀的文件)? @VickyDev 一种方法是通过grep 过滤find 的输出:find ~/docs -type f -maxdepth 1 | grep -v '~$' > filenames.txt @VickyDev 更简洁的方法是将find-name-not 一起使用:find ~/docs -type f -maxdepth 1 -not -name '*~' > filenames.txt @VickyDev 请查看***.com/questions/1341467/… 了解有关该主题的更多信息

以上是关于如何将文件夹中的文件列表发送到Linux中的txt文件的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Python 脚本的部分输出发送到文本文件?

Android 如何轻松读取 txt 文件中的数据并将其添加到列表中?

在WPF中怎么将ComboBox的下拉列表的数据进行绑定?还有能不能TXT文件中的列表?

mfc如何用txt保存下拉框控件的内容?下拉框如何读入TXT中的内容到属性-数据中?

Linux中 在当前时间后一分钟将日历重定向保存到cal.txt 怎样用命令写?谢谢

如何理解Linux shell中的“2>&1”(将文件描述2(标准错误输出)的内容重定向到文件描述符1(标准输出))