Aqui está uma maneira de fazer isso:
$ for file in ifcfg*; do
num=$(grep IPADDR $file|awk -F. '{print $4}')
sed -e "s/10.1.1.[0-9]\+/10.2.2.$(($num-19))/" $file >tmp/$file
done
Isso pega o conteúdo do endereço IP e o corta para baixo, de modo que é o quarto octeto, que é armazenado na variável $num . Essa variável é então adicionada com 19 durante o comando sed . Eu precisava expandir um sed original adicionando um [0-9]\+ para remover o quarto octeto existente para que pudéssemos substituí-lo por $num+19 .