在 solaris 中的特定模式之前插入一行

Insert a line before a particular pattern in solaris

我想在 solaris 中的特定模式之前插入一行。我试过使用

awk '/pattern/{print "new text"}1' filename

但是得到

awk: syntax error near line 1 awk: bailing out near line 1

然后我尝试使用

sed '/pattern/a new text' filename

得到了

sed: command garbled:

谁能帮我解决这个简单但有用的命令。

在 Solaris 上 awk 指的是遗留的原始 awk 实用程序。要获得标准的 awk 功能,您需要调用 nawk(新 awk)或 /usr/xpg4/bin/awk(POSIX awk),您的脚本才能正常工作。

sed 's/pattern/a new text/' filename 

sed 's/pattern/a new text&/' filename

使文本与模式匹配