mac:在许多目录中串联文本文件的内容;将目录名称附加到相应的文本文件内容

古柏葡萄

在以下目录结构中:

directory1中
-subdirectoryA
--- fileA.txt
-subdirectoryB
--- fileB.txt
subdirectoryC
--- fileC.txt

我想生成一个包含以下串联文本的文本文件:

subdirectoryA的名字
-文本包含fileA.txt内
subdirectoryB的名称
包含fileB.txt内-text
subdirectoryC的名字
-文本包含在fileC.txt

我能够使用以下命令来获取串联的文本文件的内容,但是信息我需要目录名称来组织输出:

find ./prefix_common_to_all_target_directories* -name "*.txt" -exec cat '{}' \; > concatenated_extracted_info.txt
五彩纸屑
#!/bin/bash
while read mydir; do
    echo "${mydir}:" >> output.txt
    cat $mydir/*.txt >> output.txt
done < <(find test* -type d )

这将遍历其中的所有目录directory1,并完全满足您的要求。请注意,您必须在中运行此脚本directory1


一些解释:

第一次find test* -type d运行,每行打印每个子目录的名称。然后将此输出馈送给每行read mydir运行while一次循环中的所有内容$mydir分配给每行(又名子目录名称))。
然后,循环中的第一行将目录名称写入一个冒号output.txt后跟一个冒号,使用>>表示“附加到文件”(如果文件不存在,则会创建该文件)。
循环中的第二行再次*.txt将子目录中每个文件的内容写入output.txt“追加模式”。


我的测试设置(上面的脚本另存为createfile.sh):

$ ls *
test1:
fileA.txt

test2:
fileB.txt

test3:
fileC.txt
$ bash createfile.sh
$ cat output.txt 
test1:
file content from dir1
test2:
test content from dir2
test3:
test content from dir3

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将所有目录名称写出到文本文件中

来自分类Dev

将文本文件的内容附加到C ++中的另一个文件

来自分类Dev

如何从文本文件附加到数组内容?

来自分类Dev

在我的JSP内容目录之外读取文本文件

来自分类Dev

如何在每个子目录中创建一个文本文件,以便该文本文件包含目录名称

来自分类Dev

在文本文件中获取子目录列表,并使用新的子目录名称附加该txt文件

来自分类Dev

创建单独的文本文件以列出每个目录和子目录中的内容

来自分类Dev

删除文本文件中的内容

来自分类Dev

列出所有文件目录名称到文本文件

来自分类Dev

在多个文件/目录中搜索字符串,然后打印文本文件的内容

来自分类Dev

获取目录名称并将其写入文本文件

来自分类Dev

使用sed命令用目录名称替换文本文件

来自分类Dev

将文本文件内容打印到列中

来自分类Dev

将文本文件的内容导入 Python 中的列表

来自分类Dev

如何根据文本文件中的名称将文件移动到新目录?

来自分类Dev

如何根据文本文件中的名称将文件符号链接到新目录?

来自分类Dev

如何回显目录中每个文本文件的内容?

来自分类Dev

附加到文本文件VBA

来自分类Dev

附加到文本文件

来自分类Dev

附加到文本文件的回声

来自分类Dev

目录内容与文本文件的逐行内容的diff样式比较

来自分类Dev

在bash中串联文本文件

来自分类Dev

合并文本文件目录

来自分类Dev

从文本文件创建目录

来自分类Dev

如何从应用程序目录文本文件中读取文本文件

来自分类Dev

清空文本文件的内容

来自分类Dev

从文本文件VBS读取内容

来自分类Dev

恢复文本文件的覆盖内容

来自分类Dev

如何验证文本文件的内容?

Related 相关文章

热门标签

归档