params_s.rst (Источник)

.. tags: python, cfg, ssh, paramiko, script
.. title: params_s.py

Скрипт для хранения параметров в .cfg файлах (как my.cnf, например). 
Может сохранять в локальный или удаленный (подключается по ssh) файл. 
Если указаны оба - и локальный и удаленный файлы - объединяет конфигурацию в одно целое, при этом учитывает специальный параметр
*version* находящийся в каждой секции конфигурации. Более новые параметры перепишут более старые, если есть в обоих конфигах.
Остальные параметры будут скопированы в общую конфигурацию. Даже после запроса на чтение *get* оба конфигурационных файла 
будут объеденены и перезаписаны последней версией.
При удалении, если не указан параметр, будет удалена соответствующая секция.
Если параметр/секция не найдены скрипт не возвращает ничего. 

Пример запуска:

.. code-block:: console

   eking@eking:~$ ./params_s.py -h

   usage: params_s.py [-h] [--file FILE] [--node NODE] [--key KEY] [--port PORT]
                      [--usr USR] [--pwd PWD] [--nf NF] [--section SECTION]
                      [--option OPTION] [--value VALUE]
                      action

   get/set params from .cfg file on the local and/or remote host (node). For use
   on bash/sh scripts

   positional arguments:
     action             set/get/del/list/sectlist

   optional arguments:
     -h, --help         show this help message and exit
     --file FILE        local file name
     --node NODE        IP/fqdn of node to connect
     --key KEY          key file
     --port PORT        ssh port
     --usr USR          user for connect
     --pwd PWD          password for user or key
     --nf NF            file name of config on node
     --section SECTION  section name
     --option OPTION    variable name
     --value VALUE      value

   eking@eking:~$ 

  
Скачать скрипт: `https://github.com/eking-go/public-tools <https://github.com/eking-go/public-tools>`_.