Quoting
Jump to navigation
Jump to search
Your bash shell understand special characters with special meanings. For example, $var is used to display the variable value. You can enable or disable the meaning of a special character by enclosing them into a single or double quotes. This is also useful to suppress warnings and error messages while writing the shell scripts.
Quoting
There are three types of quotes
Quote type | Name | Meaning | Example |
---|---|---|---|
" | Double Quotes | The double quote ( "quote" ) protects everything enclosed between two double quote marks except $, ', " and \. Use the double quotes when you want variables and command substitution. |
echo "$SHELL" |
' | Single quotes | The single quote ( 'quote' ) protects everything enclosed between two single quote marks. It is used to turn off the special meaning of all characters. |
echo '$SHELL' |
` | Back quote | Use back quote ( `command-name` ) to execute command and replace a command with its output within the same command-line. However, $(command-name) is encouraged syntax for substitution as it is recommended by POSIX standard and it improves script readability. |
echo "Today is `date`" |
Backslash
The backslash ( \ ) alters the special meaning of the ' and " i.e. it will escape or cancel the special meaning of the next character. The following will display filename in double quote:
FILE="/etc/resolv.conf"
echo "File is \"$FILE\" "
The following will remove the special meaning of the dollar ( $ ) sign:
FILE="/etc/resolv.conf"
echo "File is \$FILE "