码迷,mamicode.com
首页 > 其他好文 > 详细

bash引用

时间:2015-03-15 19:56:35      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:bash   引用   

bash引用

关闭bash字符的特殊含义,叫引用

  • 反斜杠

含特殊意义的字符

用户的主目录

`

命令替换

#

注释

$

变量引用

&

把任务放到后台执行

*

通配符,代表任意个任意字符

通配符,代表一个任意字符

()

在子Shell中执行

\

引用后面的一个字符

|

管道

[]

指定一个字符集的通配符

{}

创建一个命令块

;

命令分隔符

‘‘

单引号引用字符

""

双引号引用字符

>

标准输出重定向

<

标准输入重定向

拓展是执行命令时Shell进行的。如果反斜杠后的字符没有特殊含义,shell也不会把反斜杠传给命令



单引号

单引号会使所有特殊字符失去特殊含义,高脱特殊,居家旅行必备。

不需要把整个字符串引起来,只要引起特殊字符就行。

如果单引号内需要单引号,答案是无解的。只能用反斜杠或双引号,你TM是在逗我


事实告诉我们要灵活,反斜杠、单引号、双引号一块上。


双引号

为什么存在双引号,因为程序员总是懒惰的,程序员希望在引用大多数特殊字符的同时,保留变量或命令替换。我们希望保留$,`,和 \的含义。为什么\的特殊含义保留,因为有特殊字符,就有反斜杠 \。实践证明,只有后面字符为 ",`,$,或\,时 \才有特殊含义。功夫不稳定的。

当希望把含有空格的字符串当作一个整体时,用双引号吧。

双引号里是可以用双引号的。



逃逸序列


有些命令会接受反斜杠加一个普通字符构成的逃逸序列。逃逸序列表达了某种特殊的含义,它并不是引用。

在Shell命令中还要对逃逸序列的反斜杠进行转义,所以会出现这样的东西:

echo -n -e hi,\\nhow are you?\\n

-e选项表示echo接受逃逸序列。


本文出自 “重剑无锋” 博客,请务必保留此出处http://qianyang.blog.51cto.com/7130735/1620561

bash引用

标签:bash   引用   

原文地址:http://qianyang.blog.51cto.com/7130735/1620561

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!