![将选定的信息从一个 TXT 文件移至另一个文件](https://linux22.com/image/90373/%E5%B0%86%E9%80%89%E5%AE%9A%E7%9A%84%E4%BF%A1%E6%81%AF%E4%BB%8E%E4%B8%80%E4%B8%AA%20TXT%20%E6%96%87%E4%BB%B6%E7%A7%BB%E8%87%B3%E5%8F%A6%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6.png)
我有两个txt文件:config.txt和template.txt
template.txt 必须从 config.txt 获取相关信息
假设 config.txt 包含:
colour1: red
colour2: blue
template.txt 包含:
colour1:
colour2:
是否可以“链接”这两个文件,因此 template.txt 从 config.txt 中的适当标题中获取信息,我们最终得到
模板.txt
colour1: red
colour2: blue
答案1
对于您的用例,您可能可以只使用grep -f
.您可以在文件中搜索config.txt
中的行template.txt
,它会给您匹配的行。
IE:
$ cat config.txt
color1: red
color2: blue
color3: green
color4: purple
color5: orange
foo: bar
$ cat template.txt
color1:
color2:
color5:
$ grep -f template.txt config.txt
color1: red
color2: blue
color5: orange
请注意,您不能就这样做grep -f template.txt config.txt > template.txt
,因为外壳会在运行template.txt
之前擦除。grep
您需要使用临时文件来解决这个问题。