Supondo que não existem IDs de empregador com os quais possam ser interpretados como caracteres de expressão regular válidos por sed
, por ex. *
, ?
ou \
:
sed 's:^/export/home/conf\[naa.\('"$(paste -sd '|' employeeid.txt)"'\)\]:#&:' App.conf
Se você tiver muitos IDs de empregador para que a linha resultante fique muito longa e sed
suporte -f-
(caso contrário, você terá que redirecioná-la para um arquivo primeiro e depois deixar sed
ler o script):
{
printf '%s' 's:^/export/home/conf\[naa.\(';
paste -sd '|' employeeid.txt;
printf '%s' '\)\]:#&:';
} | tr -d '\n' | sed -f- App.conf
Para fazer as alterações no local (modificando o arquivo imediatamente, em vez de mostrar os resultados), adicione -i
para o GNU sed
ou -i ''
para o FreeBSD sed
.