我在我的一个启动脚本(abc.sh)中的行下面:
runuser root -c "export CATALINA_OPTS=\"-Xms5g -Xmx10g\"; \
nohup $CATALINA_HOME/bin/startup.sh $CATALINA_HOME > /dev/null &"
我想用以下行替换-Xms5g -Xmx10g:
-Xms500m -Xmx1g -Xrunjdwp:transport=dt_socket,address=9000,server=y,suspend=n
我写了一个脚本myscript.sh,其中包含以下代码:
#!/bin/bash
sed -i~ 's/-Xms5g -Xmx10g/-Xms500m \
-Xmx1g -Xrunjdwp:transport=dt_socket,address=9000,server=y,suspend=n' ./abc.sh
但它给了我错误:
sed: -e expression #1, char 95: unterminated `s' command
任何人都可以帮我纠正这个命令吗?
注意:abc.sh中还有其他几行
谢谢!
答案 0 :(得分:1)
您最后未能添加/
。
sed -i~ 's/-Xms5g\s*-Xmx10g/-Xms500m -Xmx1g \
-Xrunjdwp:transport=dt_socket,address=9000,server=y,suspend=n/' ./abc.sh
模式应该是这样的:s/regexp/replacement/