zoukankan      html  css  js  c++  java
  • Shell-环境变量

    declare 显示定义变量的内容

     变量:全局变量 和 局部变量

    全局变量:也是环境变量,可以在创建他们的shell及其派生出来的任意子进程shell中使用,环境变量又可分为自定义环境变量和bash内置环境变量

    局部变量:也可以称为普通变量,只能在创建它们的shell函数或者shell脚本中使用。不同变量一般有开发者开发脚本程序时创建。

    环境变量:

    环境变量一般是指用export内置命令导出的变量,用户定义shell的运行环境,保证shell命令的正确执行。shell通过环境变量来确定登录用户名,命令路径,终端类型,登录目录等等。所有的环境变量都是系统全局变量。可用于所有子进程中。包括编辑器,shell脚本和各类应用

    可以把变量存在 

    用户家目录下: .bash_profile或.bashrc(非用户登录模式特有)

    查看变量

    set, env ,declare

    set: 命令输出所有的变量,包括全局变量和局部变量

    env:只显示全局变量

    declare:输出所有的变量,函数,和已经导出的变量

    set -o命令显示bash shell 的所有参数配置信息

    设置环境变量

    export :  相同于 declare -x

    1.用户环境下环境变量配置:

    ~/.bashrc : 推荐次文件夹优先

    ~/.bash_profile

    2.全局环境变量的配置

    /etc/profile

    /etc/bashrc :推荐在此文件中优先设置

    /etc/profile.d/

    环境 变量 初始化 与 对应 文件 的 生效 顺序
    当用户登录Linux系统时,shell会作为登录shell启动。此时的登录shell加载环境变量的顺序:

    1. 每个用户登录的时候,都会先执行/etc/profile文件

    2.执行第一步之后,系统会执行/etc/profile.d 目录下的脚本文件,比如:设置字符集等等

    3.执行$HOME/.bash_profile(用户环境变量文件)

    4.执行$HOME/.bashrc(用户环境变量文件),如果存在则执行,如果不存在则不执行。

    5.执行/etc/bashrc

    注意:如果用户的shell不是登录时启动的(比如手动敲下的bash时或者其他不需要输入密码的登录及远程SSH连接的情况),那么这种非登录shell只会加载$HOME/.bashrc(用户环境变量文件),并且回去找/etc/bashrc(全局环境变量),因此如果希望在非登录shell下也可读到设置的环境变量等内容,就需要将变量设定等写入$HOME/.bashrc或者/etc/bashrc.而不是$HOME/.bash_profile 或者 /etc/profile

    提示:

    1)$变量名 表示输出变量,可以用$变量名 或者 ${变量名} 两种用法

    单引号,双引号,反引号,无引号

     awk 中引用shell变量

    -------------------- 阑心而慧智,心静而致远. --------------------
  • 相关阅读:
    C#项目中怎样创建和使用类和类库
    第一个存储过程程序
    C# 如何判断字符串中是否包含另一个字符串?
    word中怎么快速选中光标之前或之后的全部内容?
    DHL学习--<asp:literal
    ASP.NET后台怎么输出方法中间调试信息?
    联想THINKPAD E40的快捷键怎么关闭?哪些F1 F2 F3的键我需要用到 但是每次都按FN 太烦人了
    sql 参数化查询问题
    echarts地图 禁止高亮显示(转载)
    EChart中使用地图方式总结(转载)
  • 原文地址:https://www.cnblogs.com/mirrorlake/p/7458894.html
Copyright © 2011-2022 走看看