linux脚本文件字符串不加引号和加引号有什么区别
我的测试脚本文件如下:运行结果如下:加不加引号的输出都是一样的,这是为什么?它们有什么区别?求高手指点…………...
我的测试脚本文件如下:
运行结果如下:
加不加引号的输出都是一样的,这是为什么?它们有什么区别?求高手指点………… 展开
运行结果如下:
加不加引号的输出都是一样的,这是为什么?它们有什么区别?求高手指点………… 展开
2个回答
展开全部
双引号在bash中称作partial quoting或者weak quoting,引号中的字符串很多不会被特殊转换,如:
空格作为词的分割符
单引号中的词
字符模式匹配
路径名扩展
进程替换 (重定向)
对于普通的字符,加不加双引号,单引号都一样
你想要看区别,可以尝试以下的一些例子:
a. touch "test me" 和 touch test me
b. echo "'$PATH'" 和 echo '$PATH'
c. echo "*" 和 echo *
d. ls "~" 和 ls ~
e. ls "> out1" 和 ls > out1
追问
想问一下
var=1和var="1"有什么区别,
因为用if [ var = 1 ]来判断时都为真,是不是和C语言中的意思有区别
追答
bash变量是没有类型的,整数1和字符“1”是一样的
C语言1是整数,“1”是字符(串)
展开全部
它们的区别仅仅在于,当需要打印的字符串中包含不同的引号时。比如:
1、显示一个带单引号的字符串 'hello'
$ echo " 'hello' " #正确打印出 'hello'
$ echo 'hello' #打印 hello
2、显示带双引号的字符串 “hello”
$ echo ' "hello" ' #正确打印出 “hello”
$ echo "hello" #打印 hello
1、显示一个带单引号的字符串 'hello'
$ echo " 'hello' " #正确打印出 'hello'
$ echo 'hello' #打印 hello
2、显示带双引号的字符串 “hello”
$ echo ' "hello" ' #正确打印出 “hello”
$ echo "hello" #打印 hello
追问
哥们答非所问了哦,我想要了解的是:字符串不加引号和加引号有什么区别,不过还是谢谢人的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询