再谈引号……

引号
/home/l/g/tomotoboy > echo "*"
*
/home/l/g/tomotoboy >echo '*'
*
/home/l/g/tomotoboy > echo \*
*


双引号
使用双引号可引用除字符$、`、\外的任意字符或字符串。这些特殊字符分别为美元符号,反引号和反斜线,对shell来说,它们有特殊意义。如果使用双引号将字符串赋给变量并反馈它,实际上与直接反馈变量并无差别。
*
/home/l/g/tomotoboy >F="HELLO"
/home/l/g/tomotoboy >echo "$F"
HELLO
/home/l/g/tomotoboy >echo $F
HELLO

/home/l/g/tomotoboy >F="hello, china,^ &"
/home/l/g/tomotoboy >echo $F
hello, china,^ &

/home/l/g/tomotoboy >echo "The $F "
The hello, china,^ &

单引号
单引号与双引号类似,不同的是shell会忽略任何引用值。换句话说,如果屏蔽了其特殊含义,会将引号里的所有字符,包括引号都作为一个字符串。使用上一个例子,结果如下:
/home/l/g/tomotoboy >echo "The '$GIRL' did well"
The 'girl' did well
/home/l/g/tomotoboy >echo 'The '$GIRL' did well'
The girl did well
/home/l/g/tomotoboy >echo 'The $GIRL did well'
The $GIRL did well

反引号
反引号用于设置系统命令的输出到变量。shell将反引号中的内容作为一个系统命令,并执行其内容。使用这种方法可以替换输出为一个变量。反引号可以与引号结合使用。下面将举例说明。
/home/l/g/tomotoboy >echo `who| wc -l`
13
/home/l/g/tomotoboy >echo `date`
Tue Aug 4 15:08:47 CST 2009

反斜线
如果下一个字符有特殊含义,反斜线防止 shell误解其含义,即屏蔽其特殊含义。下述字符包含有特殊意义:& * + ^ $ ` " | ?。假定echo命令加*,意即以串行顺序打印当前整个目录列表,而不是一个星号 *。
/home/l/g/tomotoboy >echo \*
*
/home/l/g/tomotoboy >echo $$
26421
/home/l/g/tomotoboy >echo $!

/home/l/g/tomotoboy >echo $#
0
/home/l/g/tomotoboy >echo \$$
$$

/home/l/g/tomotoboy >echo 12*12
12*12
/home/l/g/tomotoboy >echo 12 * 12
12 a.out append.sed change.sed core.log diary.txt echo factorial factorial.c greeting.sh grepgrepstrings grepstr hdisk.txt hello hello.cpp main main.c nohup.out oops.txt plane.txt readme.sh seawolf sed.out sed.txt sort.txt stat.tmp test test.sh user. online 12

使用命令expr时,用*表示乘法会出现错误,在*前加上反斜线才会正确。
/home/l/g/tomotoboy >expr 12 * 12
expr: syntax error
/home/l/g/tomotoboy >expr 12 \* 12
144

在echo命令中加入元字符,必须用反斜线起屏蔽作用。下面的例子要显示价格 $129。其
中$屏蔽与不屏蔽将产生不同的结果。
/home/l/g/tomotoboy >echo $129
29
/home/l/g/tomotoboy >echo \$129
$129
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值