# Bash Option Parser A simple library that handles the storage and retrieval of simple text options for use in BASH ## Configuration There are a couple of configuration options that the parser uses, they must be defined before it is run: ## Use ```shell # Include the library . /path/to/option-parser.sh # Set any config variables you need OPT_FILE="$HOME/.my_config" OPT_COMMENT="#" OPT_FILE_CREATE_IF_MISSING=true OPT_PERSIST_CHANGES=true # Call the parser optParser # Get an option optionValue=$(optValue "MyOptionName") # Set an option optWrite "MyOptionName" "Testing" ``` ### `OPT_FILE` The path to the file in which you want the options to be stored ### `OPT_COMMENT` The character(s) that denote the start of a comment line. Defaults to `#` ### `OPT_FILE_CREATE_IF_MISSING` Whether the option file should be created if when we try and write to the option file it does not exist. Defaults to `true` ### `OPT_PERSIST_CHANGES` Whether requests to change or add options are made the changes should be committed to the option file. Defaults to `true` ## Option File Format The options are stored in the following format: ```shell optionName=optionvalue #commentedOption=TestValue quoted="some long string" whiteSpaceTolerance = myValue tabbedOption="Tab all the options" #Tabbed Comments are ok to ```