bash变量简介
bash用户自定义变量
一、什么是变量
变量是计算机内存的单元,其中存放的值可以改变。也就是说变量的值是可以变的,很简单,我们上学的时候学过,比如学习方程式时候的xyz。一个道理。
当shell脚本需要保存一些信息时,如一个文件名或是一个数字,就把它存放在一个变量中。每个变量有一个名字,所以很容易引用它。使用变量可以保存有用信息,使系统获知用户相关设置,变量也可以用于保存暂时信息。
二、变量设置规则
1、变量名称可以由字母、数字和下划线组成,但是不能以数字开头。比如:”2name”就是错误的。
2、在bash中,变量的默认类型都是字符串型,如果要进行数值运算,则必须指定变量类型为数值型。
3、变量用等号连接值,等号左右两侧不能有空格。
4、变量的值如果有空格,需要使用单引号或双引号包括。
5、在变量的值中,可以使用’\’转义符
6、如果需要增加变量的值,那么可以进行变量值的叠加。不过变量需要用双引号包含。
“$变量名”或用${变量名}包含。
7、如果是把命令的结果作为变量值赋予变量,则需要使用反引号或$()包含命令
例如:
[root@localhost tmp]# echo $(date)
我们上节课学习通配符和特殊符号的时候提到过。
8、环境变量名建议大写,便于区分。
三、变量的分类
1、用户自定义变量
例如:
[root@localhost tmp]# name=abc
也就是变量名和值都可以自定义,用到的最多。
2、环境变量:这种变量中主要保存的是和系统操作环境相关的数据。
环境变量一般是系统里自带的变量,我们只能进行修改值,但不能修改变量名,不过我们却可以手工进行添加环境变量名和变量值。
3、位置参数变量:这种变量主要是用来向脚本当中传递参数或数据的,变量名不能自定义,变量作用是固定的。而且也不允许添加新的变量名。
4、预定义变量:是bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的。同样不允许添加新的变量。
而其实位置参数变量就是预定义变量中的一种,只不过是位置参数变量平时用的比较多,所以单拿出来进行讲解。
预定义变量是只允许修改变量值的,其他的都不允许修改。
四、自定义变量之本地变量
1、变量定义
[root@localhost tmp]# name=mageo
这样就把mageo赋值给了变量name,那么变量定义完了,如何调用呢?
我们常用echo来调用,如echo $name,就输出了mageo.
当然我们也可以在文件里进行调用,只要用$符号后面跟变量名就行了,$name.
2、变量叠加
[root@localhost tmp]# aa=123
[root@localhost tmp]# aa=”$aa”456
[root@localhost tmp]# aa=${aa}789
这就是变量叠加,也就是说把原始变量在原来值的基础上增加新值。
如上面的例子:
用echo aa会分别输出:
123
123456
123456789
如图:

3、变量查看
[root@localhost tmp]# set
这个命令可以查看所有的变量,包括系统环境变量以及我们自定义变量。
4、变量删除
[root@localhost tmp]# unset [变量名]
本教程原创作者:mageo,出自每集博客,尊重作者劳动,转载请注明出处:http://www.ql2015.cn,谢谢!
bash用户自定义变量
一、什么是变量
变量是计算机内存的单元,其中存放的值可以改变。也就是说变量的值是可以变的,很简单,我们上学的时候学过,比如学习方程式时候的xyz。一个道理。
当shell脚本需要保存一些信息时,如一个文件名或是一个数字,就把它存放在一个变量中。每个变量有一个名字,所以很容易引用它。使用变量可以保存有用信息,使系统获知用户相关设置,变量也可以用于保存暂时信息。
二、变量设置规则
1、变量名称可以由字母、数字和下划线组成,但是不能以数字开头。比如:”2name”就是错误的。
2、在bash中,变量的默认类型都是字符串型,如果要进行数值运算,则必须指定变量类型为数值型。
3、变量用等号连接值,等号左右两侧不能有空格。
4、变量的值如果有空格,需要使用单引号或双引号包括。
5、在变量的值中,可以使用’\’转义符
6、如果需要增加变量的值,那么可以进行变量值的叠加。不过变量需要用双引号包含。
“$变量名”或用${变量名}包含。
7、如果是把命令的结果作为变量值赋予变量,则需要使用反引号或$()包含命令
例如:
[root@localhost tmp]# echo $(date)
我们上节课学习通配符和特殊符号的时候提到过。
8、环境变量名建议大写,便于区分。
三、变量的分类
1、用户自定义变量
例如:
[root@localhost tmp]# name=abc
也就是变量名和值都可以自定义,用到的最多。
2、环境变量:这种变量中主要保存的是和系统操作环境相关的数据。
环境变量一般是系统里自带的变量,我们只能进行修改值,但不能修改变量名,不过我们却可以手工进行添加环境变量名和变量值。
3、位置参数变量:这种变量主要是用来向脚本当中传递参数或数据的,变量名不能自定义,变量作用是固定的。而且也不允许添加新的变量名。
4、预定义变量:是bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的。同样不允许添加新的变量。
而其实位置参数变量就是预定义变量中的一种,只不过是位置参数变量平时用的比较多,所以单拿出来进行讲解。
预定义变量是只允许修改变量值的,其他的都不允许修改。
四、自定义变量之本地变量
1、变量定义
[root@localhost tmp]# name=mageo
这样就把mageo赋值给了变量name,那么变量定义完了,如何调用呢?
我们常用echo来调用,如echo $name,就输出了mageo.
当然我们也可以在文件里进行调用,只要用$符号后面跟变量名就行了,$name.
2、变量叠加
[root@localhost tmp]# aa=123
[root@localhost tmp]# aa=”$aa”456
[root@localhost tmp]# aa=${aa}789
这就是变量叠加,也就是说把原始变量在原来值的基础上增加新值。
如上面的例子:
用echo aa会分别输出:
123
123456
123456789
如图:

3、变量查看
[root@localhost tmp]# set
这个命令可以查看所有的变量,包括系统环境变量以及我们自定义变量。
4、变量删除
[root@localhost tmp]# unset [变量名]
本教程原创作者:mageo,出自每集博客,尊重作者劳动,转载请注明出处:http://www.ql2015.cn,谢谢!