如何获取文件的内容,该文件的名称是通过regex获得的,并通过替换该行的方式插入sed的应用文件中? 例如插图
$ sed -E '/^file:\s*(\S+)/ r"\1"' file.txt
尝试将文件的内容作为可见字符串,在下面找到 file: 在 file.txt
file:
file.txt
这可能适用于您(GNU sed):
sed -E '/^file:\s*(\S+).*/{p;s//cat "\1"/e}' file
打印与regexp匹配的行,然后评估命令 cat 在第一个背面参考上。
cat
如果不需要匹配行,则替换即可:
sed -E 's/^file:\s*(\S+).*/cat "\1"/e' file