sed: -e expressão # 1, char 9: comando 'não terminado'

1

Eu tentei usar o comando sed para fazer alguma substituição de texto,

sed -i 's/port=\"8080\"/port="00\"' /opt/apache-tomcat-7.0.37/conf/server.xml 

Mas eu encontrei este erro:

sed: -e expression #1, char 9: unterminated 's' command

Qual é o problema?

    
por hguser 24.04.2013 / 08:25

1 resposta

2

Comando 'Não terminado' significa que você está perdendo um delimitador. Você precisa de 3 e tem apenas 2 em seu comando.

sed -i 's/port=\"8080\"/port="00/"' /opt/apache-tomcat-7.0.37/conf/server.xml 

Mudei o último \ para / e ele funciona:

more test
  port="8080"
sed -i 's/port="8080"/port="8000"/' test
more test
  port="8000"
    
por Rinzwind 24.04.2013 / 08:41