shell单引号屏蔽变量方法

[goforit ~]$ name="玖零後大叔"
[goforit~]$ echo $name
玖零後大叔
[goforit ~]$ echo "$name"
玖零後大叔
[goforit ~]$ echo ‘$name‘
$name
[goforit ~]$ echo "‘"$name"‘"
‘玖零後大叔‘
[goforit ~]$ echo ‘"‘$name‘"‘
"玖零後大叔"
时间: 2024-08-12 22:14:39

shell单引号屏蔽变量方法的相关文章

linux shell 单引号 双引号 反引号的区别

一.单引号和双引号 首先, 单引号和双引号,都是为了解决中间有空格的问题. 因为空格在linux中时作为一个很典型的分隔符,比如 string1=this is a string,这样执行就会报错.为了避免这个问题,因此就产生了单引号和双引号.他们的区别在于,单引号将剥夺其中的所有字符的特殊含义,而双引号中的 '$'(参数替换)和'`'(命令替换)是例外.所以,两者基本上没有什么区别,除非在内容中遇到了参数替换符$和命令替换符`. 所以下面的结果:num=3echo ‘$num’$numecho

Linux shell 单引号和双引号

在编写shell脚本的时候经常会用到引号,有些时候却老是忘记单引号和双引号之间的区别, 所以就整理一下供以后脑子不好使了的时候前来复习一下.首先说下他们的共同点: 好像就只有 一个,就是它们都可以用来界定一个字符串,这个没什么好解释的,真正需要记住的是它们区别, 所以经过整理后,它们的区别主要包括: 1).单引号属于强引用,它会忽略所有被引起来的字符的特殊处理,被引用起来的字符会被原 封不动的使用,唯一需要注意的点是不允许引用自身: 2).双引号属于弱引用,它会对一些被引起来的字符进行特殊处理,

数据库笔记:字符串单引号转义新方法

从Oracle 10g R1开始,数据库允许用另一个引用符号来代替单引号.当字符串中包含大量单引号时(如 I'm in Xi'an). 以前的表达方式如下: SQL>SELECT * FROM T WHERE ADDR='I''m in Xi''an'; 新表达方法如下: SQL>SELECT * FROM T WHERE ADDR=q'( I'm in Xi'an)';

shell 单引号以及双引号

#!/bin/bash a=23 echo '$a' echo "$a" your_name='runoob' str="Hello, I know you are \"$your_name\"! \n" echo -e $str echo $str 输出 bogon:Desktop macname$ ./test.sh $a 23 Hello, I know you are "runoob"! Hello, I know y

shell脚本由基础变量及特殊变量([email protected]、$*、$#等)到实战。

一.shell脚本建立: shell脚本通常是在编辑器(如vi/vim)中编写,也可以在命令行中直接执行: 1.脚本开头:     规范的脚本第一行需要指出有哪个程序(解释器)来执行脚本中的内容,在Linux中一般为: #!/bin/sh 或者 #!/bin/bash "#!",在执行脚本时,内核会根据"#!/bin/sh"来确定使用bash程序来解释脚本,这行必须在脚本顶端(第一行),如果非第一行则表示注释. 如果不是使用"#!/bin/sh"

PHP中的单引号跟双引号的区别

<布尔教育_燕十八_PHP基础巩固.033.单双引号区别> 不同点: 单引号只能解析转义字符“\'”和“\\”,其他的原样输出. 输出结果: 双引号能够解析以上这些转义字符: 单引号解释速度比双引号快. 单引号不解析变量: 输出结果: 为什么单引号解释比双引号快? 因为单引号遇到变量时不去判断这个值是不是变量?需不需要去调用变量,而是直接输出,所以他的速度自然就快了.

centos下,单引号括起来的shell脚本不执行解决方法

例子一: touch test.sh vi test.sh input test='echo "test*"|grep [a-zA-Z0-9] |wc -c' echo $test 保存,退出vi: sh test.sh 结果:echo "test*"|grep [a-zA-Z0-9] |wc -c 说明没有执行: 我们把一对单引号 修改成$();结果类容如下: test=$(echo "test*"|grep [a-zA-Z0-9] |wc -

linux shell中的单引号与双引号的区别(看完就不会有引号的疑问了)(转)

" "(双引号)与 ' '(单引号)的区别  你在shell prompt后面敲打键盘.直到按下enter的时候,你输入的文字就是command line了,然后shell才会以进程方式执行你所提交的命令.但是,你又可知道:你在command line输入的每一个文字,对shell来说,有什么类别之分呢? 简单而言,command line的每一个charactor分为如下两种:   *literal:也就是普通纯文字,对shell来说没有特殊功能.   *meta:对shell来说,

linux bash shell中,单引号、 双引号,反引号(``)的区别及各种括号的区别

一.单引号和双引号 首先,单引号和双引号,都是为了解决中间有空格的问题. 因为空格在Linux中时作为一个很典型的分隔符,比如string1=this is astring,这样执行就会报错.为了避免这个问题,因此就产生了单引号和双引号.他们的区别在于,单引号将剥夺其中的所有字符的特殊含义,而双引号中的'$'(参数替换)和'`'(命令替换)是例外.所以,两者基本上没有什么区别,除非在内容中遇到了参数替换符$和命令替换符`. 所以下面的结果:num=3echo '$num'$numecho "$n