\是一个转义符,跟在\后面的第一个字符将变的没有意义或特殊意义,什么是变的没有意义呢?比如'是字符串的定界符,\'的话就使它失去了定界符的意义了,变为普通的'。比如你可以通过echo '\'';输出一个单引号',同时转义字符\也不会显示。
转义字符\只在在后来是特殊符号时才有转义的功能,而其它的时候,\也只是一个普通的字符。这些所谓有特殊的符号包括:1、'也就是间引号。2、"也就是双引号。3、$如果在双引号内,它就算是特殊字符,比如echo "$aa";不会输出$aa的值,输出的是$aa。在单引号里它不算特殊字符。4、\n表示一个换行,在windows下看起来和回车一样的,linux等其他系统则不是,一般上windows下按回车键的值等于\r\n,就是回车+换行,而linux只是换行,就是\n。5、\r表示回车。6、\t表示水平制表符,就是键盘上的Tab那个按键。7、\\表示一个\。7、\[0-7]{1,3},这是个正则的描述,就是表示1-3位的8进制数字,8进制不懂?说简单点:表示0-7的数字,1-3位数,打个比方0,7,10,777,注意,不会出现8以上的数字,最大就是777。8、\x[0-9A-Fa-f]{1,2},也是个正则的描述,表示1-2位的16进制数字,8进制不懂得话,16进制也是不懂的,说简单点就是0-9,a-f(不分大小写)的1-2位数,如1,10,F,1a,FF,最大值就是FF了。