首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shell入门第六讲

1、自定义变量

1.1、变量赋值

变量赋值我们要使用到 = 这个运算符,比如我们前面讲过的给NUM变量赋值。

bash [root@localhost ~]# NUM=666

这样我们就完成了一个简单的赋值操作,我们也可以赋值字符串等等,比如

bash [root@localhost ~]# VAR="how are you"

我们将一字符串赋值给一个变量VAR中,建议如果数据中包含有空格符号等,最好使用双引号引起来。

1.2、变量引用

把数据赋值给一个变量中,我们最终的目的是为了引用变量值,引用变量我们使用 ${} 这样的方式来使用,比如

bash [root@localhost ~]# echo ${NUM} 666

echo命令在这里仅仅起到打印变量值的作用,我们数据已经赋值给NUM变量了,而echo就是把变量值给打印出来。

引用VAR变量的值

bash [root@localhost ~]# echo ${VAR} how are you

当然,也可以直接使用 $ 来引用变量值,不过我们仍然建议使用 ${} 这样的方式来引用。

bash [root@localhost ~]# echo $VAR how are you

1.3、字符串拼接

熟悉简单python基础的同学都知道python的字符串拼接特别的方便,那么在shell里面也可以使用此功能,比如

bash [root@localhost ~]# echo ${NUM}888 666888

我们原来NUM值是666,然后后面添加上888,就起到了一个字串拼接的功能。而VAR变量也可以这么做,比如:

bash [root@localhost ~]# echo ${VAR}"? I am fine,Thank you" how are you? I am fine,Thank you

对于包含空格的字串,我们一定要加上引号(双引号和单引号都可以,当然两者有简单的使用区别)。

1.4、注意事项

我们建议使用 ${} 的方式引用变量,但是大多数同学习惯直接使用 $ 来引用变量,这有什么区别呢?

bash [root@localhost ~]# echo $NUM888 # 此行是空值 [root@localhost ~]# echo ${NUM}888 666888

这是因为shell把 NUM888 这个整体当成了一个变量来对待,而我们并没有给NUM888做赋值操作,因此为空。

与个别特殊字符也是如此,比如变量后面加上一个下划线。

bash [root@localhost ~]# echo $NUM_

变量命名规则中下划线是可以使用的,因此他会认为 NUM_ 是一个有效的变量名,从而引用。

因此,大多数变量下直接使用 $ 就可以,而在一些特殊情况下最好使用${} 的方式,那不如我们现在养成一个习惯,引用变量就使用 ${} 的方式最好

文章转载于马哥教育官网:http://www.magedu.com/83991.html

下一篇
举报
领券