Skip to main content
p. 24

2.10 Special Characters

When discussing Linux with others, you should know a few names for some of the special characters that you’ll encounter. If you’re amused by this sort of thing, see the “Jargon File” (http://www.catb.org/jargon/html/) or its printed companion, The New Hacker’s Dictionary, 3rd edition, by Eric S. Raymond (MIT Press, 1996).

Table 2-1 describes a select set of the special characters, many of which you’ve already seen in this chapter. Some utilities, such as the Perl programming language, use almost all of these special characters! (Keep in mind that these are the American names for the characters.)

Table 2-1: Special Characters

CharacterName(s)Uses
*star, asteriskRegular expression, glob character
.dotCurrent directory, file/hostname delimiter
!bangNegation, command history
|pipeCommand pipes
/(forward) slashDirectory delimiter, search command
\backslashLiterals, macros (never directories)
$dollarVariables, end of line
'tick, (single) quoteLiteral strings
`backtick, backquoteCommand substitution
"double quoteSemi-literal strings
^caretNegation, beginning of line
p. 25
CharacterName(s)Uses
~tilde, squiggleNegation, directory shortcut
#hash, sharp, poundComments, preprocessor, substitutions
[ ](square) bracketsRanges
{ }braces, (curly) bracketsStatement blocks, ranges
_underscore, underCheap substitute for a space used when spaces aren’t wanted or allowed, or when autocomplete algorithms get confused
note

You will often see control characters marked with a caret; for example, ^C for CTRL-C.