linux 环境变量

1. shell 和环境变量

        shell是一个命令行解释器,那么用户想要以不同的方式与Linux内核交互,就可以采用不同的shell。shell有不同的版本,常见的有:sh,bash,csh,tcsh,ksh。其中Bash 是大多数Linux 系统默认的 Shell。

        环境变量是一种特殊的变量,以便 shell 中运行的程序或脚本能够轻松访问到这些数据。这也是存储持久数据的一种简便方法。

2. 环境变量分类

      

  • 按生命周期分:

永久的:在环境变量脚本文件中配置,用户每次登录时会自动执行这些脚本,相当于永久生效。

临时的:用户利用export(bash)或则setenv(tcsh)命令,在当前终端下声明环境变量,关闭Shell终端失效。

  • 按作用域分:

系统环境变量:公共的,对全部的用户都生效。配置文件:/etc/profile, /etc/bashrc (bash shell)

用户环境变量:用户私有的、自定义的个性化设置,只对该用户生效。 配置文件:~/.bash_profile,~/.bashrc(bash shell)

note: 对于tcshell 则更改bash 为tcsh

此外对于shell 脚本函数中的变量,我们一般称之为局部变量。 

3. 不同shell设置变量方式

  • bash
    a="world"  # 定义一个普通变量
    export variable_name=value  #设置环境变量:
    
    variable_name=value
    export variable_name   #先定义变量后export:
    
    在脚本中可以source var_file 将文件的变量带入当前shell。
    
  • cshell or tcshell
    set varia=hello  #定义普通变量
    setenv varia=hello # 定义环境变量
    
    set     # 查看所有自定义的普通变量
    setenv  or env # 查看所有环境变量

    4. 批量导入变量

        我们可以通过source  cfg.sh(filename) 的形式将脚本中定义的变量全部使其在当前shell中生效。

小计:

先使用find命令查找文件,然后使用grep命令查找哪些文件包含某个字符串
find ./ -name "*.cpp" | xargs grep -n "main"
find ./ -name "*.cpp" -exec grep "main" {} \+ 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值