Shell变量

PS:变量名不能有+,像是g++这种定义就不行.

1.定义变量

bash shell默认情况下是不区分变量类型的。全都是以字符串来存储

var=val;	[[值不包含空格时,可以不用引号]]
var='val';
var="val";

需要注意一点,定义变量的时候,=周围不能有空格!!!

2.使用变量

使用时,通过$var即可,{}可加可不加,加上是为了帮助解释器识别变量的边界。

建议使用方式:${var}

3.修改变量的值

var=new_val;	[[直接使用新值就行了,原来的被覆盖掉]]

4.单引号和双引号的区别

  • ’ ‘:单引号里面是什么值就输出什么,及时有变量和命令。
  • “":双引号里面的值,会先解析变量和命令
#!/bin/bash
url="aaa"
var1='this is ${url}'	[[此时var1]]  this is ${url}
var2="this is ${url}"	[[此时var2]]	 this is aaa

5.将命令的结果赋值给变量

var1=`pwd`
var2=$(pwd)

6.只读变量

使用readonly命令,可以将变量定义为只读的。

7.删除变量

使用unset可以删除变量。不能删除只读变量

#!/bin/bash

var="holo"
unset var	[[在这之后,变量var就没用了]]

echo ${var}	[[啥也不会输出]]