Para comentar linhas que começam com start /usr/sbin/snmpmibd
, use o comando s
com um padrão usando ^
anchor e #
no texto de substituição, além de &
, que significa o texto substituído. Você pode combinar as duas linhas separadamente ou perceber que snmpd
é snmpmibd
com mib
omitido (concisão às custas de clareza) ¹ e usa snmp\(mib\)\{0,1\}d
. Como o padrão contém uma barra, use outro caractere como o delimitador, como !
. Como sed
é um filtro, você precisará gravar a saída em um novo arquivo e, em seguida, mover o novo arquivo para o lugar (redirecionando a saída de sed
para o mesmo arquivo que a entrada não funcionaria: seria primeiro apague o arquivo antigo e comece a ler a partir do arquivo agora vazio) ².
sed -e 's!^start /usr/sbin/snmpmibd !#&!' -e 's!^start /usr/sbin/snmpmibd !#&!' </etc/rc.tcpip >/etc/rc.tcpip.new
mv /etc/rc.tcpip.new /etc/rc.tcpip
Para editar um arquivo, você pode usar ed em vez de sed.
ed -s /etc/rc.tcpip <<'EOF'
g!^start /usr/sbin/snmpd ! s/^/#/
g!^start /usr/sbin/snmpmibd ! s/^/#/
w
q
EOF
¹ O AIX não possui operadores \?
ou \|
, apenas iniciou o BRE, portanto \(snmpmibd\|snmpd\)
não funcionará.
² O AIX sed não possui -i
, que é uma extensão do GNU.