shell基础
一、bash中的变量
1、变量的定义:变量是计算机的内存单元,其中存放的值是可以改变的。
2、变量的设定规则:变量名不能以数字开头;变量的等号两边不能有空格,变量的值如果想有空格必须用单引号或者双引号引起来;变量的默认类型是字符串型,如果要进行计算需要指定变量类型为数值型;在变量的值中可以使用“”转义符;变量的叠加需要使用双引号“$变量名”或者${变量名};如果需要把命令的结果作为变量值赋予变量,则需要使用反引号或者$()包含命令;环境变量建议大写便于区分。
3、变量的分类
用户自定义变量(本地变量):用户可以自由定义但只能在当前shell中生效。
环境变量:这种变量主要是保存和系统操作环境相关的数据(PATH),可新建一个环境变量也可修改系统的环境变量(修改的是环境变量的值)。
位置参数变量:主要用来向脚本当中传递参数或者数据,变量名不能自定义,变量的作用是固定的也不能定义,只能修改传递变量的值。
预定义变量:是bash中已经定义好的变量,变量名不能自定义,变量的作用也是固定的,位置参数变量是预定义变量中的一种。
4、set命令是查看变量,unset 变量名 是删除一个变量
二、环境变量(全局变量)
1、环境变量的定义:不仅可以在当前shell中生效还能在其子shell中生效,将这个环境变量写入配置文件中还会在所有shell中生效。
2、设置环境变量
export 变量名=变量值(export的意思是申明该变量是环境变量)
env是专门查询环境变量命令 将本地变量声明为环境变量只需要export 变量名就可以了
eg:PATH=$"PATH":/root/sh 或者PATH=${PATH}:/root/sh 这是把PATH环境变量进行变量的叠加
三、位置参数变量
1、参数及其作用