в одну сторону с awk
#!/bin/bash
ip=1.2.3.4
awk -v ip="$ip" '/server-id/{
$0="server-id="ip;f=0
f=1
g=1
}
{print}
END{
if(g==0){ print "server-id="ip }
}' file
вывод при наличии «server-id»
$ more file
1
2
server-id=1
end
$ ./shell.sh
1
2
server-id=1.2.3.4
end
вывод, когда нет "server-id"
$ more file
1
2
end
$ ./shell.sh
1
2
end
server-id=1.2.3.4