Linux 如何在GNU sed中结束'i'命令?
我试图使用Linux 如何在GNU sed中结束'i'命令?,linux,bash,sed,stream,gnu-sed,Linux,Bash,Sed,Stream,Gnu Sed,我试图使用sed对输入字符串进行几次替换和插入 但是,我最近注意到insert命令I不会在上终止与其他类似,而是打印字符串的其余部分 $ sed "s/^foo/bar/; 1i foo foo foo; s/foo$/baz/;" 在以下输入上运行该命令时 foo bar baz 我得到以下不正确的输出 foo foo foo; s/foo$/baz/; bar bar baz 终止该命令的正确方法是什么?您可以在一个命令中使用多个-e分开的查询: sed -e 's/^foo/bar/
sed
对输入字符串进行几次替换和插入
但是,我最近注意到insert命令I
不会在上终止代码>与其他类似,而是打印字符串的其余部分
$ sed "s/^foo/bar/; 1i foo foo foo; s/foo$/baz/;"
在以下输入上运行该命令时
foo bar baz
我得到以下不正确的输出
foo foo foo; s/foo$/baz/;
bar bar baz
终止该命令的正确方法是什么?您可以在一个命令中使用多个-e
分开的查询:
sed -e 's/^foo/bar/' -e '1i foo foo foo' -e 's/foo$/baz/' <<< "foo bar baz"
foo foo foo
bar bar baz