Character Meaning ~ Home directory ` Command substitution (archaic) # Comment $ Variable expression & Background job * String wildcard ( Start subshell ) End subshell \ Quote next character | Pipe [ Start character-set wildcard ] End character-set wildcard { Start command block } End command block ; Shell command separator ' Strong quote " Weak quote < Input redirect > Output redirect / Pathname directory separator ? Single-character wildcard ! Pipeline logical NOT