
Quiero reemplazar la cadena de todos los archivos js que existen en los directorios
export name="test_user" &&
echo $customerName &&
sed -i -- 's/this.NAME=""/this.NAME=\"'$name'\"/g' *.js
Si no uso el espacio, funciona bien pero con la cadena anterior el comando falla
Respuesta1
's/this\.NAME=""/this.NAME="'"$name"'"/g'
Desglosado en partes:
's/this\.NAME=""/this.NAME="'
"$name"
, esto es lo importante: se debe citar la expansión de la variable.'"/g'
Además, si lo usa \"
en el reemplazo y está entre comillas simples, entonces insertará \"
, no "
, en el resultado.
También parece utilizar una variable llamada customerName
. Supongo que se trata de un error tipográfico.
Si el sed
que estás utilizando puede realizar ediciones in situ de la manera que pareces desear, no lo sé.
Relacionado: