# crudini **Repository Path**: dingyao123/crudini ## Basic Information - **Project Name**: crudini - **Description**: A utility for easily handling ini files from the command line and shell scripts. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 7 - **Created**: 2024-07-26 - **Last Updated**: 2025-06-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # crudini ## Description A utility for easily handling ini files from the command line and shell scripts. ``` Usage: crudini --set [OPTION]... config_file section [param] [value] or: crudini --get [OPTION]... config_file [section] [param] or: crudini --del [OPTION]... config_file section [param] [list value] or: crudini --merge [OPTION]... config_file [section] ``` ``` Options: --existing[=WHAT] For --set, --del and --merge, fail if item is missing, where WHAT is 'file', 'section', or 'param', or if not specified; all specified items. --format=FMT For --get, select the output FMT. Formats are sh,ini,lines --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 " ," --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 ``` ## Examples: * Add/Update a var `crudini --set config_file section parameter value` * Update an existing var `crudini --set --existing config_file section parameter 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) ```