Soy nuevo en shell scripting pero obtengo este error y no puedo entender qué sucede.Obteniendo error de sed
sed: 1: "/Users/local/Do ...": extra characters at the end of d command
sed: 1: "/Users/local/Do ...": extra characters at the end of d command
sed: 1: "/Users/local/Do ...": extra characters at the end of d command
sed: 1: "/Users/local/Do ...": extra characters at the end of d command
Aquí es el guión que estoy corriendo
for fl in $(S_convertPath ${RESOURCE_DIR}/db)/db.changelog-*xml; do
sed -i "s/HOSTNAME/${IP_ADDRESS}/g" $fl
done
Gracias
Lo es. El valor 'PSM_SERVER_ADDRESS' es una ruta (que contiene'/'caracteres) por lo que el comando s interpreta esos'/'caracteres como sus delimitadores (por ejemplo,' s/HOSTNAME // Users/davidkavanagh/path/g'. Parece alternativo se deben usar delimitadores. Tal vez 's @ HOSTNAME @ $ {PSM_SERVER_ADDRESS}/g'. – jamessan
IP_ADDRESS es igual a una función que obtiene ip usando el nombre de host -i para usar en todas las plataformas – daverocks
@daverocks, aún necesita ejecutar el script modificado Proporcioné para hacer eco en la línea, incluso con los cambios que ha realizado. Es la única forma de saber cuáles son los comandos que se le dan a 'sed'. – paxdiablo