我执行这个命令:
sed -i 13s/log4j.appender.ROOT2.File=.*/log4j.appender.ROOT2.File='/appli/diap/log.log/' /applis/DIAPASON/diapason1/conf/log4j.properties
我有这个错误:
sed: -e expression n°1, caractère 61: option inconnue pour `s'
谢谢。
您必须为s
表达式使用不同的分隔符,或者/
在替换中使用的路径中反引号。
例如
sed -i '13s@\(log4j.appender.ROOT2.File=\).*@\1/appli/diap/log.log@' /applis/DIAPASON/diapason1/conf/log4j.properties
您必须反斜杠,或使用不同的分隔符。否则,s///
表达式在 之前结束appli
,这是“s 的未知选项”。
sed -i 13s/log4j.appender.ROOT2.File=.*/log4j.appender.ROOT2.File='\/appli\/diap\/log.log/' /applis/DIAPASON/diapason1/conf/log4j.properties
sed -i 13s%log4j.appender.ROOT2.File=.*%log4j.appender.ROOT2.File='/appli/diap/log.log%' /applis/DIAPASON/diapason1/conf/log4j.properties