Collection of useful bash functions.
Every script file includes the function and a test to show how it's meant to be used and check that the function really works. Just executing the script runs that test.
Check folder for extension
Checks a given folder for certain file extensions recursively. All found files with the extension(s) are returned in a global array; New files are appended to the array.
The check_folder_for_extension test folder contains of 13 files, 12 of them images, which should be found by the test.
function call:
check_folder ./cffe_test "*.jpg *.JPG"
For multiple extensions (or other parts of the file name to match) space separate the list, like shown above.
Clean up
Cleaning up in a script and exit with a given exit code.
function call:
clean_up 0;
For testing the function call the script with:
clean_up.sh test
Logger
Logger to write messages with individual levels to a file.
In level debug all logged messages are printed to stdout, too.
Log levels are
5 LLDebug, for exceptionally verbose messages, also on std out
4 LLInfo, informative messages
3 LLWarning, warning messages
2 LLError, error messages
1 LLMdtry and mandatory messages to get minimal info in a log file
0 LLMute really nothing gets written
The higher the level set in $Log_Level to the logger, the more verbose it gets.
logger $LLWARNING "This is my message";
produces the following message in the log file:
logger 20231122_22:43:19 Warning: This is my message!