shell-4.shell双引号,单引号,反引号,反斜杠

shell 双引号,单引号,反引号,反斜杠
<1>.双引号"";允许通过$符号引用其他变量值
<2>.单引号‘‘:    禁止引用其他变量值,$视为普通字符
<3>.反引号``: 将命令执行结果输出
<4>.反斜杠\ : 处理特殊字符,处理转义字符,例如:\t  \n  \r

1.双引号""
    ·使用双引号可引用除$,`,\,字符外的任意字符或字符串
[[email protected] ~]# name="yuanji"
[[email protected] ~]# echo "hello,$name"
hello,yuanji
        
2.单引号‘
    ·与双引号类似,不同的是Shell会忽略任何引用值。换句话说,如果屏蔽了其特殊含义,会将引号里的的所有字符,都作为一个字符串
    ·将所有的字符当成普通字符,进行输出
[[email protected] ~]# server=‘BJ_BGP‘         
[[email protected] ~]# echo "server is @server"
server is @server

3.反引号`
    ·用于设置系统命令的输出到变量。Shell将反引号中的内容作为一个系统命令,并执行其内容
[[email protected] ~]# echo "It‘s `date`"
It‘s 2016年 05月 13日 星期五 14:08:59 CST

4.反斜杠\
    ·如果一个字符有特殊含义,反斜线防止Shell误解其含义,即屏蔽其特殊含义。
    ·下述字符包含有特殊意义:& * + ^ $ ` " | ?

[[email protected] ~]# echo "This book price for $188.88"   # $188.88 其实是$1 是变量  之后是88.88
This book price for 88.88
[[email protected] ~]# echo "This book price for \$188.88"
This book price for $188.88

[[email protected] ~]# echo ‘This book price for $188.88‘  #或者用单引号
This book price for $188.88

[[email protected] ~]# echo  -e "Hello.\nwelcome to Shell."  
Hello.
welcome to Shell.

这里 -e 表示对转义字符进行替换。如果不使用 -e 选项,将会原样输出:
[[email protected] ~]# echo "Hello.\nwelcome to Shell."    
Hello.\nwelcome to Shell.

关于echo的使用 会在后续的文章中介绍
以上是个人点点总结和理解,水平不高,文笔水平很烂,请各位大大见谅。
可以一起交流学习。

我的QQ:610851588
  可以加入我建的群(现在群人很少,希望慢慢多起来)
  Linux  群:183932302
  Python ,shell 交流群:469094734

时间: 2024-08-11 07:48:40

shell-4.shell双引号,单引号,反引号,反斜杠的相关文章

Linux Shell 中的反引号,单引号,双引号

反引号 反引号位 (`) 位于键盘的Tab键的上方.1键的左方.注意与单引号(')位于Enter键的左方的区别. 在Linux中起着命令替换的作用.命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置. 如下,shell会执行反引号中的date命令,把结果插入到echo命令显示的内容中. [[email protected] sh]# echo The date is `date` The date is 2016年 08月 7日 星期日  19:25:43 CST 单引号,双

Shell中的单引号(‘)双引号(”)和反引号(&#183;)

在bash中,$.*.?.[.].'.".`.\.有特殊的含义.类似于编译器的预编译过程,bash在扫描命令行的过程中,会在文本层次上,优先解释所有的特殊字符,之后对转换完成的新命令行,进行内核的系统调用. 其中,反引号类似于函数调用,而不仅仅是简单的文本替换及匹配. 命令行中,被单引号引用的部分,其中所有的特殊字符按照普通字符解释: 双引号引用的部分,仅解释$(美元符号).\(\n \t除外).`(反引号),解释后的文本仅按照普通文字处理(同单引号). 反引号相当于命令替换,引用的部分优先执行

shell中的双引号,单引号,反引号

在shell中引号分为三种:单引号,双引号和反引号. 单引号 ‘ 由单引号括起来的字符都作为普通字符出现.特殊字符用单引号括起来以后,也会失去原有意义,而只作为普通字符解释.单引号用于保持引号内所有字符的字面值,即使引号内的\和回车也不例外,但是字符串中不能出现单引号.(注意是所有,只是单引号本身不能够出现在其中).例如: $ string=’$PATH’ $ echo $string $PATH 可见$保持了其本身的含义,作为普通字符出现. 双引号 “ 双引号用于保持引号内所有字符的字面值(回

Linux Shell中的反引号,单引号,双引号

反引号位 (`) 位于键盘的Tab键的上方.1键的左方.注意与单引号(')位于Enter键的左方的区别. 在Linux中起着命令替换的作用.命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置. 如下,shell会执行反引号中的date命令,把结果插入到echo命令显示的内容中. [[email protected] sh]# echo The date is `date` The date is 2011年 03月 14日 星期一 21:15:43 CST 单引号.双引号用于

Linux Shell中反引号``, 单引号&#39;&#39;, 双引号&quot;&quot;, $混用总结

用一个小程序(argv.py)来演示下: #!/usr/local/bin/python3 import sys print('sys.argv has these', len(sys.argv), 'elements:', sys.argv) 运行与结果: # 首先是赋予执行权限 chmod 755 argv.py #1 一个空格一个命令行参数 ./argv.py I love Shell scripting. sys.argv has these 5 elements: ['./argv.p

shell 脚本中双引号 单引号 反引号 的区别

转自:http://blog.csdn.net/iamlaosong/article/details/54728393 最近要编个shell脚本处理数据,需要检测数据文件是否存在,文件名中包含日期,所以需要生成最近几天的日期,以便检测文件是否存在,看下面的脚本中如何使用双引号.单引号.反引号: OPDATE=`date -d '-1 day' +%Y%m%d` for i in $(seq 10) do FILEDATE=`date -d "-$i day" +%Y%m%d` echo

Unix Shell中单引号、双引号字符、反斜杠、反引号的使用

在执行shell脚本的时候,shell将会对脚本中的行进行解释,然后执行:对于一些特殊处理的句子,我们可以使用引号或者反斜线来避免shell解释执行之.如下,当在命令行中输入:echo *child.sh env_variable father.sh param.sh profile.sh 125017.sh默认会将当前文件夹下的所有文件都打印出来,但我们需要的是输出一个“*”.可以以这样的方式让shell不去解释星号(*):echo "*"* 下面是shell引用类型--------

shell中的单引号、双引号、反引号

在shell中引号分为三种:单引号,双引号和反引号. 单引号 ' 由单引号括起来的字符都作为普通字符出现.特殊字符用单引号括起来以后,也会失去原有意义,而只作为普通字符解释.单引号用于保持引号内所有字符的字面值,即使引号内的\和回车也不例外,但是字符串中不能出现单引号.(注意是所有,只是单引号本身不能够出现在其中). 例如: $ string='$PATH' $ echo $string $PATH $ 可见$保持了其本身的含义,作为普通字符出现. 双引号 " 双引号用于保持引号内所有字符的字面

Shell中单引号、双引号、反引号、反斜杠的区别

1. 单引号 ( '' ) # grep Susan phonebook Susan Goldberg 403-212-4921 Susan Topple 212-234-2343 如果我们想查找的是Susan Goldberg,不能直接使用grep Susan Goldberg phonebook命令,grep会把Goldberg和phonebook当作需要搜索的文件 # grep 'Susan Gold' phonebook Susan Goldberg 403-212-4921 当shel