首页 > 解决方案 > sed:包括一个由正则表达式指定的外部文件

问题描述

我想使用sed. 这是一个例子

我有一个文件input.txt,其中包含以下内容:

#INCLUDE filename-to-import

目前我正在处理这个sed以创建output.txt

sed -r -e "/^#INCLUDE (\w+)/r ${HOME}/inc/<filename>.sh" input.txt

如何反向引用正则表达式中捕获的组以导入filename-to-import指定的组?我尝试使用\1但没有用,我相信因为它超出了正则表达式范围。$1也没有用。

这可能sed吗?

标签: linuxsedcommand-line

解决方案


如前所述,我认为这不能用sed. 这是awk一个单列:

awk '$1 == "#INCLUDE" { while(getline line <$2){print line} }' input.txt

推荐阅读