- Notifications
You must be signed in to change notification settings - Fork61
A utility for manipulating ini files
License
pixelb/crudini
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
crudini --set [OPTION]... config_file section [param] [value]crudini --get [OPTION]... config_file [section] [param]crudini --del [OPTION]... config_file section [param] [list value]crudini --merge [OPTION]... config_file [section]SECTION can be empty ("") or "DEFAULT" in which case,params not in a section, i.e. global parameters are operated on.If 'DEFAULT' is used with --set, an explicit [DEFAULT] section is added.Multiple --set|--del|--get operations for a config_file can be specified. --existing[=WHAT] For --set, --del and --merge, fail if item is missing, where WHAT is 'file', 'section', or 'param', or if WHAT not specified; all specified items. --format=FMT For --get, select the output FMT. Formats are 'sh','ini','lines' --ini-options=OPT Set options for handling ini files. Options are: 'nospace': use format name=value not name = value 'space': ensure name = value format 'sectionspace': ensure one blank line between sections 'ignoreindent': ignore leading whitespace --inplace Lock and write files in place. This is not atomic but has less restrictions than the default replacement method. --list For --set and --del, update a list (set) of values --list-sep=STR Delimit list values with "STR" instead of " ,". An empty STR means any whitespace is a delimiter. --output=FILE Write output to FILE instead. '-' means stdout --verbose Indicate on stderr if changes were made --help Write this help to stdout --version Write version to stdout# Add/Update a var crudini --set config_file section parameter value# Add/Update a var in the root or global area.# I.e. that's not under a [section]. crudini --set config_file "" parameter value# Update an existing var crudini --set --existing config_file section parameter value# Add/Update/Delete multiple variables atomically crudini --set config_file section parameter1 value \ --set config_file section parameter2 value \ --del config_file section parameter3# Get multiple items from stdin env | crudini --get - '' USER --get - '' SHELL# Add/Append a value to a comma separated list# Note any whitespace around commas is ignored crudini --set --list config_file section parameter a_value# Add/Append a value to a whitespace separated list# Note multiline lists are supported (as newline is whitespace) crudini --set --list --list-sep= config_file section parameter a_value# Delete a var crudini --del config_file section parameter# Delete a section crudini --del config_file section# output a value crudini --get config_file section parameter# output a global value not in a section crudini --get config_file "" parameter# output a section crudini --get config_file section# output a section, parseable by shell eval "$(crudini --get --format=sh config_file section)"# update an ini file from shell variable(s) echo name="$name" | crudini --merge config_file section# merge an ini file from another ini crudini --merge config_file < another.ini# compare two ini files using standard UNIX text processing diff <(crudini --get --format=lines file1.ini|sort) \ <(crudini --get --format=lines file2.ini|sort)# Rewrite ini file to use name=value format rather than name = value crudini --ini-options=nospace --set config_file ""# Add/Update a var, ensuring complete file in name=value format crudini --ini-options=nospace --set config_file section parameter value# Rewrite ini file to ensure a single blank line between sections,# and no leading or trailing blank lines crudini --ini-options=sectionspace --set config_file ""# Read indented ini file, like .gitconfig crudini --ini-options=ignoreindent --format=lines --get ~/.gitconfigOn windows ensure a python interpreter is installed.For example installing fromhttps://www.python.org/downloads/will put the py launcher and pip in the PATH.
Then ensure the iniparse module is installed byrunning the following from a "cmd" prompt:
pip install iniparseThen crudini can be invoked by downloading just the crudini.pyfile and running like:
py crudini.py --helpOn Linux systems crudini is generally available from your standardpackage manager, and installing will also ensure the iniparsedependency is appropriately installed on your system.You can also download and run the single crudini.py file directlyto use latest version.
On any system you should be able to pip installthe latest code from github like:
pip install git+https://github.com/pixelb/crudini.git#egg=crudiniAbout
A utility for manipulating ini files
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors13
Uh oh!
There was an error while loading.Please reload this page.