Для вашего случая, вероятно, можно просто использовать grep -f
. Вы можете искать в файле config.txt
строки из template.txt
, и это даст вам совпадающие строки.
То есть:
$ 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
. Чтобы обойти это, нужно использовать временный файл.