列出文件中的文件夹名称和特定行

时间:2018-12-17 14:01:36

标签: linux

我有几个文件夹:

folder1
folder2
folder3
...

在每个这些文件夹中,我都有一个名为ds.dat的文件。 在ds.dat文件的第12行,我正在寻找以下文本:

content_at_dsdat_in_folder1
content_at_dsdat_in_folder2
content_at_dsdat_in_folder3
...

我想知道linux命令产生一个文本文件,该文件同时包含文件夹名称和内容:

folder1 content_at_dsdat_in_folder1
folder2 content_at_dsdat_in_folder2
folder3 content_at_dsdat_in_folder3

我已经尝试过(恢复第12行的内容):

ls -d */ >>test.txt; sed -sn 12p **/ds.dat >>test.txt

但确实如此:

folder1
folder2
folder3
content_at_dsdat_in_folder1
content_at_dsdat_in_folder2
content_at_dsdat_in_folder3

任何提示都将不胜感激。

1 个答案:

答案 0 :(得分:-1)

如果我正确地解释了您的一些简短规范,并且所有目录确实都具有包含12行或更多行的ds.dat,则以下内容应该起作用:

for i in *; do echo -n "$i "; sed -n 12p $i/ds.dat; done > test.txt
相关问题