Estou precisando resolver uma questão de manipulação de texto para um projeto pessoal de automação aqui. Basicamente tenho um script que cria usuarios automaticamente e estou precisando adicionar uma função para liberar portas no firewall para os serviços que este script habilita.
Utilizo o csf como firewall e consigo refazer toda uma linha com o comando abaixo:
sed -i 's/^TCP_IN =.*/TCP_IN = "227,280,9090,10500,57413"/' csf.conf
Os campos que preciso modificar são campos dentros das "".
Por exemplo:
Eu recebo a porta a porta pela variavel $NETWORKPORT1
Supondo que o valor da variavel seja 50, preciso checar se ele existe na linha TCP_IN dentro do /etc/csf.conf, se não existir, adiciona-lo e realizar o refresh de regras executando um "csf -r".
Também preciso realizar o contrario, verificar se um valor existe nesta mesma linha, remove-lo e realizar o refresh nas regras.
Qual a melhor forma de realizar tais funçoes?