shell环境变量

1.环境变量的操作
1) declare :命令创建一个变量名为 tmp 的变量 其实也可以不用 declare 预声明一个变量,直接即用即创建,这里只是告诉你 declare 的作用,这在创建其它指定类型的变量(如数组)时会用到。
$ declare temp 
2) = :号赋值运算符,将变量 tmp 赋值为 desktop
$ temp = hello_world
3) echo = $ 读取变量($表示引用一个变量的值)
$ echo $temp
hello_world	//shell 命令输出内容
2.shell环境变量概念:
   分开理解, 变量是指进程中可以被改变或创建的参数(字符串/数值等); 环境是指父进程提供给子进程运行的环境;

在所有的 UNIX 和类 UNIX系统中,每个进程都有其各自的环境变量设置,且默认情况下,当一个进程被创建时,除了创建过程中明确指定的话,它将继承其父进程的绝大部分环境设置。 Shell 的环境变量就是作用于自身和它的子进程的运行环境参数。

    简单地理解:当前进程的子进程有效则为环境变量,否则不是。 因此,不是所有的变量都是环境变量,linux中链表一般为三种:
    1)当前 Shell 进程私有用户自定义变量,可通过set导出,如下自定义一个变量 
$temp=hello_world
$echo $temp
hello_world
   2)Shell 本身内建的变量,如PATH变量,
$echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
   
    3)从自定义变量导出的环境变量,如上述定义的temp,本身为自定义变量,但可通过export变成可导出的环境变量
$temp=hello_world
$echo $temp
hello_world
$bash //创建子shell
$echo $temp
		//无输出
$exit //退出子shell
$export temp
$bash //创建子shell
$echo $temp
hello_world		//有输出
3.环境变量的生存周期
  1) 永久的:需要修改配置文件,变量永久生效;在Linux系统中/etc/bashrc 存放shell变量,/etc/profile存放环境变量

  2)临时的:使用 export 命令行声明即可,变量在关闭 shell 时失效。如上例子

4.添加/生效/修改/删除环境变量
  如上述的PATH,我们经常需要在其中添加或删除程序的执行路径
  1)在PATH中添加新路径,':'作为分隔符

$PATH=$PATH:/home/xxx_user/mybin //这种情况,终端退出便会失效
$echo "$PATH=$PATH:/home/xxx_user/mybin" >> .bashrc //终端shell运行都会生效
//>> 表示将标准输出以追加的方式重定向到一个文件中,> 是以覆盖的方式重定向到一个文件中
  2)生效:上述修改的配置脚本想要让其生效,除了重启外,还可以通过source命令
source .bashrc
  3)修改变量
$PATH=${PATH%/home/xxx_user/mybin}  //删除PATH中mybin\
  4)删除变量,如删除上述定义的temp
unset temp	




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值