关于shell脚本中‘’,“”,``的各自用途

    单引号是不能识别变量,只会原样输出,单引号是不能转义的

"":

    双引号能够识别变量,双引号能够实现转义(类似于“”)

网上查了一些bash的单引号,双引号""和反引号``的区别。

两者都是解决变量中间有空格的问题。

在bash中“空格”是一种很特殊的字符,比如在bash中这样定义str=this is String,这样就会报错,为了避免出错就得使用单引号和双引号""。

单引号,双引号""的区别是单引号剥夺了所有字符的特殊含义,单引号内就变成了单纯的字符。双引号""则对于双引号""内的参数替换($)和命令替换(``)是个例外。

比如说   str="hello" echo $str

结果就是$str

改成双引号  echo "$str",结果就是hello

``:反引号(esc键下方的那个键),当在脚本中需要执行一些指令并且将执行的结果赋给变量的时候需要使用“反引号”。

例如:

#!/bin/bash
# Author: smile.
#Date & Time: 2021-08-04 16:30:27
#Description: output time.

str=`date +%Y%m%d`
echo $str

结果:20210804

参考:

经验分享 程序员 微信小程序 职场和发展