sed 命令替换配置文件中的值

can*_*cal 2 sed text-processing

我正在使用这个命令:

sed -i  's/\(^TestT_STOA_TS1901=\).*/\1N/'/app/test/must/untuio.cf
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

XXXXXXXXX:/app/test/must>sed -i  's/\(^TestT_STOA_TS1901=\).*/\1N/'/app/test/must/untuio.cf
sed: -e expression #1, char 33: unknown option to `s'
Run Code Online (Sandbox Code Playgroud)

为什么会这样?如何替换配置文件中的值?

cha*_*aos 8

使用sed

sed -i 's/\(^Key2=\).*/\1Value4/' file
Run Code Online (Sandbox Code Playgroud)

-i标志激活sed就地编辑。它搜索以 开头的行,Key2=并用键 ( \1) 后跟新值替换该行Value4

编辑

如果在 中使用了斜杠或其他命令字符sed,则必须对它们进行转义:

sed -i 's/\(^Key2=\).*/\1long\/value\'/with\$many\"strange\^characters/' /path/to/file
Run Code Online (Sandbox Code Playgroud)

编辑2:在你的情况下:

sed -i  's/\(^TestT_STOA_TS1901=\).*/\1N/' /app/test/must/untuio.cf
Run Code Online (Sandbox Code Playgroud)