Como diz Gilles, você precisará usar uma ferramenta que conheça o formato de seus arquivos de configuração. Para o seu exemplo específico, você pode usar um script Python curto que usa o módulo interno ConfigParser .
-
Primeiro, digamos que seu arquivo de configuração original no servidor seja
original.cfg
:[config] ip=127.0.0.1 port=22
-
Agora, coloque suas alterações em um novo arquivo chamado
update.cfg
:[config] user=root
Este arquivo deve ter entradas novas ou alteradas listadas sob o cabeçalho da seção onde você gostaria que elas fossem enviadas.
-
Em seguida, execute um script como este:
#!/usr/bin/env python import ConfigParser config = ConfigParser.ConfigParser() # Read the original config file with open('original.cfg', 'r') as f: config.readfp(f) # Also read in all the changes we'd like to make with open('update.cfg', 'r') as f: config.readfp(f) # Write the full new config file out with open('output.cfg', 'w') as f: config.write(f)
Existem, claro, muitas variações sobre como fazer isso. Por exemplo, as alterações de configuração podem ser codificadas diretamente no script Python, em vez de serem lidas a partir de um arquivo update.cfg
separado. Isso deve lhe dar uma boa base para começar.