![将单个文本与多行文件合并](https://linux22.com/image/1029661/%E5%B0%86%E5%8D%95%E4%B8%AA%E6%96%87%E6%9C%AC%E4%B8%8E%E5%A4%9A%E8%A1%8C%E6%96%87%E4%BB%B6%E5%90%88%E5%B9%B6.png)
我正在尝试结合工作tvg 名称包含文件的多行
tr '\n' '~' < file1.txt | sed s/~/tvg-name/g
仅打印第一个单行
tvg-namegama1
我的file1.txt有超过50行例如
gama1
beta2
tera3
等等50多行
所需输出
tvg-name="gama1"
tvg-name="beta2"
依此类推,直到文件结束。
答案1
您可以sed
单独使用,如下所示:
sed 's/.*/tvg-name="&"/' file1.txt
这会将内容添加到文件的每一行前面tvg-name="
和后面。"
也可以使用 来完成awk
,如下所示:
awk '{printf "tvg-name=\"%s\"\n", $0}' file1.txt
或者使用 pure bash
,如下所示:
while IFS= read -r l; do printf 'tvg-name="%s"\n' "$l"; done < file1.txt