paulo1205
(usa Ubuntu)
Enviado em 14/02/2017 - 02:59h
Algum dos
var[n] contém o caráter “/”?
Se sim, você pode usar outro separador de argumentos no comando
s do
sed. Por exemplo:
a="/etc/passwd"
b="/backup/etc/passwd.orig"
sed "s,$a,$b/" /tmp/my_script.sh > /tmp/other_script.sh
Obviamente, se você escolher outro separador de argumentos, tal separador não vai poder aparecer nas strings a serem substituídas, a não ser que você escape os caracteres especiais para o
sed.
a='\/bin\/sh'
b='\/var\/named\/chroot\/bin\/rksh'
sed -i "s/$a/$b/" $HOME/bin/some_script.sh