diff --git a/Bash-Scripting.txt b/Bash-Scripting.txt index 9737ad4..cc6140c 100644 --- a/Bash-Scripting.txt +++ b/Bash-Scripting.txt @@ -297,4 +297,42 @@ [[ $STR1 =~ $regex ]] - \ No newline at end of file + +-> Wildcards (globbing patterns) +|-----------------------------------------------------------------------| +| Symbol | Description | Example | Example matches | +|-----------------------------------------------------------------------| +| ? | Single | hel? | help, hell, | +| | character | | hel1.... | +|-----------------------------------------------------------------------| +| * | Any number of | ca* | car,ca,carpet, | +| | characters | | carpenter,car112.. | +| | (including zero)| | | +|-----------------------------------------------------------------------| +| [] | Single character| file[0-2] | file0,file1,file2 | +| | from range | [hd]ello | hello or dello | +|-----------------------------------------------------------------------| +| {} | Comma seperated | {*.txt, | hello.txt,doc.txt, | +| | terms | *.pdf} | source.pdf, book.pdf| +|-----------------------------------------------------------------------| +| [!] | Any character | file[!1] | file2,file3.... | +| | listed in | | | +| | brackets | | | +|-----------------------------------------------------------------------| + + * some useful character classes: (use it within []) + + |-------------------------------------------| + | [:upper:] | Uppercase character | + | [:lower:] | Lowercase character | + | [:alpha:] | Alphabetic character | + | [:digit:] | Number character | + | [:alnum:] | Alphanumric character | + | | (alpha + digit) | + | [:space:] | whitespace character | + | | (space, tab, newline) | + |-------------------------------------------| + +* [[ $STRING == pattern_with_wildcards ]] +* [[ $STRING == file[0-9].txt ]] +* [[ $STRING == rich* ]] \ No newline at end of file