linea insertar examples linux bash sed

linux - insertar - sed manual



sed: opciĆ³n desconocida para `s '' (1)

El problema es con barras diagonales: tu variable las contiene y el comando final será algo así como sed "s/string/path/to/something/g" , que contiene demasiadas barras inclinadas.

Como sed puede tomar cualquier carácter como delimitador, puede intentar usar otro que no aparezca en su cadena de reemplazo:

replacement="/my/path" sed -e "s@pattern@$replacement@"

Tenga en cuenta que esto no es a prueba de balas: si la cadena de reemplazo contiene más tarde @ , se romperá por la misma razón, y cualquier secuencia de barra invertida como /1 se interpretará de acuerdo con las reglas de sed.

Estoy tratando de usar

sed -i -e "s/.*seb.*/ /"$ftp_login_template/"/" $ftp_dir

sin embargo, recibo este error:

sed: -e expression #1, char 34: unknown option to `s''

No entiendo por qué ya que esto funciona perfectamente:

sed -i -e "s/.*wbspassword.*/ /"wbspassword/": /"$password/",/" $user_conf

¿Alguna idea de lo que estoy haciendo mal?

¿Podría ser este el problema? ftp_login_template=/${user}:${password}:24:86:://var//lib//clit.${user}//downloads://bin//false/"