如何将文件夹中的文件列表发送到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文件的主要内容,如果未能解决你的问题,请参考以下文章
Android 如何轻松读取 txt 文件中的数据并将其添加到列表中?
在WPF中怎么将ComboBox的下拉列表的数据进行绑定?还有能不能TXT文件中的列表?
mfc如何用txt保存下拉框控件的内容?下拉框如何读入TXT中的内容到属性-数据中?