Files
bash_snippets/README.md
2024-02-17 23:27:53 +01:00

62 lines
1.6 KiB
Markdown

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](cffe_test) 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](logger.sh) 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!
```