Bootstrap

Linux_SHELL脚本中的反引号`

Linux_SHELL脚本中的反引号(`)

用反引号,将shell命令引起来,可以将命令的输出值赋给变量

比如这里,date命令输出具体的时间

[root@localhost ~]$ date
Mon Apr 27 16:07:01 CST 2020

那么我用反引号将命令完整的引起来,赋值给变量today,那我们可以输出这个变量,若无再次赋值,那这个变量值是不会改变的。

[root@localhost ~]$ today=`date`
[root@localhost ~]$ echo $today
Mon Apr 27 16:13:36 CST 2020
[root@localhost ~]$ echo $today
Mon Apr 27 16:13:36 CST 2020

要输出某个命令的结果值,直接$美元符引用其实也可以了,是一样的效果

[root@localhost ~]$ echo $(date)
Mon Apr 27 16:20:45 CST 2020
[root@localhost ~]$ today = $(date)
[root@localhost ~]$ echo $today
Mon Apr 27 16:20:59 CST 2020
[root@localhost ~]$ echo $today
Mon Apr 27 16:20:59 CST 2020
$() 与 反引号 `` 其实效果是一样的
在操作上,这两者都是达到相应的效果,但是建议使用$(),理由如下:
1、``反引号容易与双引号弄混,
2、$()更直观
但$()不是所有类在unix系统都支持这种方式,但反引号是肯定支持的。
;