SSH, The Secure Shell: The Definitive Guide, 2nd Edition
by Daniel J. Barrett, Richard E. Silverman, Robert G. Byrnes
Regex Syntax: ZSH_FILEGLOB (or Traditional) Patterns
The escape character is a backslash (\). With this you can escape metacharacters to
use them in their plain character form.
In the following examples, literal E and F
denote any expression, whether a pattern or a character:
*Match any string consisting of zero or more characters. The characters can be any characters apart from slashes (
/). However, the asterisk does not match a string if the string contains a dot (.) as its first character, or if the string contains a dot immediately after a slash. This means that the asterisk cannot be used to match filenames that have a dot as their first character.If the previous character is a slash (
/), or if an asterisk (*) is used to denote a match at the beginning of a string, it does match a dot (.).That is, the asterisk (
*) functions as normal in Unix shell fileglobs.?Match any single character except for a slash (
/). However, do not match a dot (.) if located at the beginning of the string, or if the previous character is a slash (/).That is, the question mark (
?) functions as normal in Unix shell fileglobs (at least in ZSH, although discarding the dot may not be a standard procedure).**/Match any sequence of characters that is either empty, or ends in a slash. However, the substring
/.is not allowed. This mimics the**/construct in ZSH. (Please note that**is equivalent to*.)E#Act as Kleene star, match
Ezero or more times.E##Closure, match
Eone or more times.
( Start a capturing ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access