Bash/Sh %term% sh %1/%2 %term% sh %1/%2 1 0 5 bash sh bsh string1 " \("\|\n\) string2 ' ' string3 ` ` comment # \n vars \$[a-zA-Z_][a-zA-Z0-9_]* array \@[a-zA-Z_][a-zA-Z0-9_]* hash \%[a-zA-Z_][a-zA-Z0-9_]* function_calls \&[a-zA-Z_][a-zA-Z0-9_]* keywords1 \b\(alias\|break\|case\|continue\|do\|done\|elif\|else\|esac\|exit\|export\|fi\|for\|if\|in\|return\|set\|then\|unalias\|unset\|while\|fgrep\|gawk\|grep\|gzip\|kill\|killall\|less\|md\|mkdir\|mv\|nice\|pidof\|ps\|rd\|read\|rm\|rmdir\)\b keywords2 \b\(halt\|ifconfig\|init\|initlog\|insmod\|linuxconf\|lsmod\|modprobe\|reboot\|rmmod\|route\|shutdown\|traceroute\|/C3\|awk\|basename\|cat\|cp\|echo\|egrep\|sed\|sleep\|test\|touch\|ulimit\|uname\|usleep\|zcat\|zless\|\)\b operators \(<\|>\|<<\|>>\|!\|~\|||\|&&\)