Shell脚本学习笔记——符号(4)

在初识Shell时,我们介绍过,Shell是一种弱类型语言。但是,Shell也是有变量类型的,但它的变量类型和C/C++的变量类型有点不一样。当我们运行Shell时,会同时存在三种变量:

  • 本地变量:局部变量在脚本或者命令中定义,仅在当前Shell实例中有效,其他Shell启动的程序不能访问局部变量。
  • 环境变量:所有的程序,包括Shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候Shell脚本也可以定义环境变量。
  • Shell变量:Shell变量是由Shell程序设置的特殊变量。Shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了Shell的正常运行。

先来举一个例子:


我们在父shell上定义了一个变量,直接在交互式父shell中,访问是可以直接访问的。但是,在子脚本中访问,却没有访问到。

使用export命令将myval变量导成环境变量,发现直接就可以显示出来了。



  • 本地变量

只存在于当前Shell进程,用set命令可以显示当前Shell进程中定义的所有变量(包括本地变量和环境变量)和函数。上面的myval在没有被export时,就是父Shell内的一个本地变量。环境变量是任何进程都有的概念,而本地变量是Shell特有的概念。


  • 环境变量

环境变量是可以从父进程传给子进程,因此Shell进程的环

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值