我想使用sed替换另一个文本文件中的第一行。
在替换行中必须是$ variable。
答案 0 :(得分:0)
唯一(相当简单)安全地做到这一点的方法是
一种方法是
{ printf '%s\n' "$variable"; sed '1d' original.txt; } > tmp.txt && mv tmp.txt original.txt
答案 1 :(得分:-1)
var1=$(systemd-escape $var)
sed -ri '1s@^.*$@'"$var1"'@' filename
$ var引用你的动态变量,我们专注于第一行,然后用var变量替换从行的开头到结尾的任何内容。注意单引号的位置,它将包含变量扩展到sed语句。