shell中的变量

变量介绍

在编程中,我们总有一些数据需要临时存放在内存中,以待后续使用时快速读出,内存在系统启动的时候被按照1B一个单位(16进制编码),并对内存的使用情况做记录,保存在内存跟踪表中。

计算机的单位:

1B = 8bit

1KB = 1024B

1MB = 2014KB

1GB = 1024MB

1TB = 1024GB

1PB  = 1024TB

....

变量:变量是编程中最常用的一种临时在内存中存取数据的一种方式

1)内存占用:如果存的是一个字符则占用1个字符,如果存的是字符串则是字符串的长度加上一个字节的长度(\0是一个特殊字符,代表字符串结束)。

2)变量名与内存的关系:计算机中会将对应的内存空间和变量名绑定在一起,此时代表这段内存空间已经被程序占用,其他程序不可用,然后将变量名对应的值存在对应内存地址的空间里面。

理解变量存储:STRING1 = "ABC"

1) STRING1(逻辑地址) <==> 0x5...0x8(物理地址)      存储数据 ABC

STRING1是给人看的,方便记忆;0x5...0x8是内存物理地址,是计算机寻址的依据

2) 对于人来说STRING1上存的数据是ABC,对于计算机来说数据是存在物理地址上的

3)在建立变量的时候计算机自动将逻辑地址(变量名)和物理地址做了对应。

变量读出

1)当调用STRING1的时候,计算机会根据对应关系,找到物理地址;

2)定位内存地址,读出数据并返回。

变量分类

1. 本地变量:用户私有变量,只有本用户可以使用,保存在家目录下的.bash_profile、.bashrc文件下

2. 全局变量:所有用户都可以使用,保存在/etc/profile、/etc/bashrc文件中

3. 用户自定义变量:用户自定义,比如脚本中的变量

定义变量

变量格式:变量名=值

在shell编程中变量名与等号之间不能有空格。

1> 变量名命名规则:

1. 变量名只能使用英文字母、数组和下划线。首个字符不能以数字开头

2. 中间不能有空格,可以使用下划线

3. 中间不能有标点符号

4. 不是使用bash里面的关键字(可以使用help命令查看保留关键字)

注意:字符串要用单引号或者双引号引起来。

变量赋值:

注意:以上这种方法设置为本地变量。

2> 读取变量内容

读取变量内容的符号:$

读取方法:$变量名

3> 取消变量 unset

4> 定义全局变量 export

上述设置的变量其实都是一次性变量,系统重启之后就会丢失,如果希望本地变量或者全局变量可以永久使用,可以将需要设置的变量写入变量文件中即可。

5> 定义永久变量

本地变量:用户私有变量,只有本用户可以使用,保存在家目录下的.bash_profile、.bashrc文件中

全局变量:所有用户都可以使用,保存在/etc/profile、/etc/bashrc文件中

本地变量:

全局变量:

 学习视频:https://www.bilibili.com/video/BV1vE41127wm/?p=10 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值