我需要在unix中为现有文件添加标题,作为我的要求的一部分。为此,我使用了ed文本编辑器从这个讨论
How can I add a line to a file in a shell script?
这是我使用的代码
printf '0a\n%s\n.\nw\n',$header, | ed "./runtime/"$outputFileName
我从另一个
文件中获取了$ header的值"header 1","header 2","header 3"
执行脚本后,当我检查输出文件的第一行文件时,只包含这一行
1","header
如何将整行添加到输出文件中?请帮忙。提前谢谢。
PS:我正在使用Sun Solaris
答案 0 :(得分:3)
请务必正确使用printf。 (1)引用标题(2)用空格分隔参数
echo '"header 1","header 2","header 3"' > test.txt
header="$(cat header.txt)"
printf '0a\n%s\n.\nw\n' "$header"
结果
0a
"header 1","header 2","header 3"
.
w