Tips for restricted source in zsh
Globbing
Globs are patterns used to match files and other strings. If you can't use a particular character but you need to access a command with that character in its name, you can often approximate it with a glob, like /*/ls
The full description of glob syntax is under Filename Generation in zshexpn(1), but here is a summary:

? matches any single character
* matches zero or more characters
&lt;1-10&gt; matches any number between 1 and 10

&lt;-&gt; matches any number


[a-d] matches any character in the set abcd
[:name:] matches any character in the named set (full details in the man-page)
[^a] or [!a] matches any character except a

[^] or [!] matches any single character


(a|b) matches a or b
With the option --nocaseglob, globbing is case-insensitive. This allows you to do /*/LS instead of ls
With the option --extendedglob, you can use the additional syntax:

^pattern matches anything except pattern
a~b matches pattern a but not b
a~^b matches both patterns a and b
a# matches zero or more instances of a
a## matches one or more instances of a