反斜线符号“ \ ”在Bash中被解释为转义字符,用于去除一个单个字符的特殊意义,它保留了跟随在之后的字符的字面值,除了换行符(\n,\r)。
如果在反斜线之后一个换行字符立即出现,转义字符使 行 得以继续,但是换行字符后必须紧跟命令,不能出现空格,遇到命令很长时使用反斜线很有效。
例一:
[Linux@linux ~]$ echo $HOME
/home/
[linux@linux ~]$ echo \$HOME
$HOME
例子中,反斜线去除了“ $ ”字符的特殊意义,保留字面值,从而不输出home目录路径。
例二:
export PATH=\
/bin:\
/sbin:\
/usr/bin:\
/usr/sbin:\
/usr/local/bin:\
/apps/bin:\
/apps/tools:\
/apps/tslib/bin\
例子中,反斜线使行得以继续,命令可以正常输入。
例二(反)
export PATH=\
/bin:\
/sbin:\
/usr/bin:\
/usr/sbin:\
/usr/local/bin:\
/apps/bin:\
/apps/tools:\
/apps/tslib/bin\
例子中就会出现错误:
/bin:: bad variable name/* /bin:错误变量名 */
因为在"\+换行符"之后必须紧跟命令,不能有空格。