以特定格式将unix中的文件列出为文本文件

lrl1mhuk  于 2022-11-04  发布在  Unix
关注(0)|答案(2)|浏览(152)

我想将特定文件夹中的文件以特定格式列出到文件列表中
例如,我在一个文件夹中有以下文件
一个月一个月一个月一个月
我想在一个文本文件中创建一个字符串,将它们列出如下
-a file1.csv -a file2.csv -a file3.csv
帮助创建脚本
ls /path/* > file_list.lst

jslywgbw

jslywgbw1#

find实用程序可以完成此操作。

find /path/ -type f -printf "-a %P " > file_list.lst

对于给定路径中的每一个f文件(递归地),这给出了它们相对于起点的P路径,格式如示例中所示。
请注意:

  • Linux文件名可以包含空格和换行符;这并不涉及那些。
  • file_list.lst文件将有一个尾随空格,但没有尾随换行符。
  • 结果将不按特定顺序排列。
hvvq6cgz

hvvq6cgz2#

你可以把它们拍下来。

printf "-a %s " /path/*

如果您计划将其与命令一起使用,则可能需要阅读https://mywiki.wooledge.org/BashFAQ/050并对%q printf格式说明符感兴趣。

相关问题