注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

随机过程

http://superware.blog.163.com

 
 
 

日志

 
 

Single Quotes ('') and Double Quotes ("") in Bash  

2015-01-25 01:08:13|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1. Single quotes

        Single quotes ('') are used to preserve the literal value of each character encosed within the quotes. A single quote may not occur between single quotes, even when preceded by a backslash.

        也就是说,单引号内的所有字符都保持它本身字符的意思,而不会被 Bash 进行解释,例如:$var 就是 $var 本身而不再解释为 Bash 变量 var 的取值;\ 就是 \ 本身而不再是 Bash 的转义字符。

$ D='`date`'

$ echo "$D"

`date`

$ echo '$D'

$D

$ echo '\$D'

\$D

$ echo


$ D="`date`"

$ echo $D

Sun Jan 24 10:24:32 EST 2015

$ echo "$D"

Sun Jan 24 10:24:32 EST 2015
$ echo '$D'
$D
$ echo '\$D'
\$D

 
2. Double quotes

        Using double quotes the literal value of all characters enclosed is preserved,  except for the dollar sign, the backticks(backward single quotes, ``) and the backslash. The dollar sign and the backticks retain their special meaning within the double quotes.

        The backslash retains its meaning only when followed by dollar, backtick, double quote, backslash or newline.  Within double quotes, the backslashes are removed from the input stream when followed by one of these characters. Backslashes preceding characters that don’t have a special meaning are left unmodified for processing by the shell interpreter.

        也就是说,除了$、(``)(不是单引号)和 \ 外,双引号内的所有字符将保持字符本身的含义而不被 Bash 解释。$ 和 (``) 在双引号内,如果不被转义字符 \  转义,将无条件的保持 Bash 下的特殊含义,而转义字符 \ 是有条件的。转义字符只有后跟 $、(``)、(" ")、\  和 \n 五种特殊字符时才进行转义,换句话说,双引号中只有以上五种字符可以被转义。如果在双引号中出现后跟非以上五种字符的 \ 字符,\ 就是 \ 本身,没有什么特殊含义。


(I).  $,  ``,  \ 在双引号中被解释为 Bash 的特殊含义

$ -- 解释为变量的值

`` -- 解释为运行命令

\ -- 解释为转义字符

(II). \ 解释为转义字符,能且只能在它后面跟以下 5 个字符时

\$ -- $

\` -- `

\" -- "

\\ -- \

\n -- \\n

如:

$ echo "\$"

$

$ echo "\`"

`

$ echo "\""

"

$ echo "\\"

\

$ echo -e "Hello \nWorld"

Hello

World

$ echo -e "Hello \\nWorld"

上例可知,echo 要对换行符 \n 进行转义,需要加 -e 选项,而且 \n 和 \\n 效果相同。
  评论这张
 
阅读(84)| 评论(0)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017