Il titolo dice tutto. Ho bisogno di sostituire un valore di proprietà che non conosco con un valore diverso. sto cercando questo:Modificare un valore di proprietà in un file di proprietà dallo script di shell
#!/bin/bash
sed -i "s/myprop=[^ ]*/myprop=$newvalue/g" file.properties
ottengo sed: -e expression #1, char 19: unknown option to
s'`
Credo che il problema è che $newvalue
è una stringa che rappresenta una directory in modo che scombina sed.
Cosa posso fare?
'/' è solo il solito (ma non obbligatorio) delimitatore per 'sed'. Cosa succede se provi qualcos'altro, come pipe ('|')? –
@DanFego ha funzionato! mi ci è voluto molto per capire che il '/' nella mia stringa var era il problema. Ho dimenticato che puoi cambiare il delimitatore di sed. grazie – Michael
Perché usi il modificatore 'g'? – fge