È possibile utilizzare variabili come di seguito. Come qui, ho voluto sostituire hostname
ad es., Variabile di sistema nel file. Sto cercando di stringa look.me
e sostituzione che tutta la linea con look.me=<system_name>
sed -i "s/.*look.me.*/look.me=`hostname`/"
È inoltre possibile memorizzare il valore di sistema in altra variabile e può utilizzare tale variabile per la sostituzione.
host_var=
`hostname`
sed -i "s/.*look.me.*/look.me=$host_var/"
file di input:
look.me=demonic
uscita di un file (supponendo che il mio nome del sistema è prod-cfm-frontend-1-usa-central-1
):
look.me=prod-cfm-frontend-1-usa-central-1
Forse anche menzionare che se la variabile contiene barre, è necessario utilizzare un delimitatore diverso che non si verifica nella stringa (o backslash-escape ogni occorrenza del delimitatore). La barra è un valore predefinito comune per 's', ma è possibile utilizzare qualsiasi carattere di punteggiatura; 'sed" s% draw ($ numero_visto; n _)% draw ($ numero; n _)% g "file.txt' o' s # da # a # g' o 's_from_to_g' ecc. – tripleee