shell基础篇(三)--引号,shell基础篇--引号
shell基础篇(三)--引号,shell基础篇--引号
---今天篇幅比较少;只介绍引号。
shell中的引号有三种:双引号",单引号',反引号`
1. 双引号:由双引号括起来的字符,除$、倒引号(`)和反斜线(\)仍保留其特殊功能外,其余字符均作为普通字符对待
2. 单引号:由单引号括起来的字符都作为普通字符出现
3. 反引号:命令替换的一种。
一.为什么要用引号
前面我们讲了变量;在定义变量时。变量都是字符串;
var01=100 var02='100' var03="100"
输出的结果都是一样的,字符串100.
若字符串是我们熟悉的 hello world。你不加引号试试。会报错吧;解释如下:
这里引用围墙理论:
单引号,双引号相当于围墙。若不用引号的话,echo hello world. 就输出hello。还会把world当成一个执行的操作。反之。告诉linux。hello world是一个整体。
二. 单引号跟双引号区别
至于区别前面解释已经很清楚了。其实相当于单引号是“强引号”,双引号是“弱引号”。 除$、倒引号(`)和反斜线(\)仍保留其特殊功能外。它们其实差不多。
三. 反引号
反引号是命令替换的一种。例外一种是$()。至于用哪种看个人爱好了。例如:
echo `date` echo "current directory is ` pwd `" #这里的双引号能替换为单引号吗?思考吧,骚年。
一对引号用来表示数据类型为字符串。
其余两对引号用来消除“空格”。
如果路径中没有空格,一对引号就可以了(表示数据类型是字符串类型)。
例如:
CreateObject("WScript.Shell").Run "c:\hello.exe"
WshShell.Run"""C:\Program Files\aa.exe"""
可以同写成
WshShell.Run chr(34)&"C:\Program Files\aa.exe"&chr(34)
两个引号的意思就是字符 "
实际运行的代码是"C:\Program Files\aa.exe"
不是C:\Program Files\aa.exe
因为文件路径有空格,所以要这样
评论暂时关闭