# salt.modules.ini_manage

Edit ini files

maintainer:

  <akilesh1597@gmail.com>

maturity:

  new

depends:

  re

platform:

  all

(for example /etc/sysctl.conf)

salt.modules.ini_manage.get_ini(file_name, separator='=')

  Retrieve whole structure from an ini file and return it as dictionary.

  API Example:

      import salt.client
      with salt.client.giet_local_client() as sc:
          sc.cmd('target', 'ini.get_ini',
                 [path_to_ini_file])

  CLI Example:

      salt '*' ini.get_ini /path/to/ini

salt.modules.ini_manage.get_option(file_name, section, option, separator='=')

  Get value of a key from a section in an ini file. Returns `None` if no matching key was found.

  API Example:

      import salt.client
      with salt.client.get_local_client() as sc:
          sc.cmd('target', 'ini.get_option',
                 [path_to_ini_file, section_name, option])

  CLI Example:

      salt '*' ini.get_option /path/to/ini section_name option_name

salt.modules.ini_manage.get_section(file_name, section, separator='=')

  Retrieve a section from an ini file. Returns the section as dictionary. If the section is not found, an empty dictionary is returned.

  API Example:

      import salt.client
      with salt.client.get_local_client() as sc:
          sc.cmd('target', 'ini.get_section',
                 [path_to_ini_file, section_name])

  CLI Example:

      salt '*' ini.get_section /path/to/ini section_name

salt.modules.ini_manage.remove_option(file_name, section, option, separator='=')

  Remove a key/value pair from a section in an ini file. Returns the value of the removed key, or `None` if nothing was removed.

  API Example:

      import salt
      sc = salt.client.get_local_client()
      sc.cmd('target', 'ini.remove_option',
             [path_to_ini_file, section_name, option])

  CLI Example:

      salt '*' ini.remove_option /path/to/ini section_name option_name

salt.modules.ini_manage.remove_section(file_name, section, separator='=')

  Remove a section in an ini file. Returns the removed section as dictionary, or `None` if nothing was removed.

  API Example:

      import salt.client
      with  salt.client.get_local_client() as sc:
          sc.cmd('target', 'ini.remove_section',
                 [path_to_ini_file, section_name])

  CLI Example:

      salt '*' ini.remove_section /path/to/ini section_name

salt.modules.ini_manage.set_option(file_name, sections=None, separator='=')

  Edit an ini file, replacing one or more sections. Returns a dictionary containing the changes made.

  file_name

    path of ini_file

  sectionsNone

    A dictionary representing the sections to be edited ini file The keys are the section names and the values are the dictionary containing the options If the ini file does not contain sections the keys and values represent the options

  separator=

    A character used to separate keys and values. Standard ini files use the "=" character.

    New in version 2016.11.0.

  API Example:

      import salt.client
      with salt.client.get_local_client() as sc:
          sc.cmd(
              'target', 'ini.set_option',
              ['path_to_ini_file', '{"section_to_change": {"key": "value"}}']
          )

  CLI Example:

      salt '*' ini.set_option /path/to/ini '{section_foo: {key: value}}'