首页
学习
活动
专区
圈层
工具
发布

linux bash环境变量简单总结

一般的Linux发行版中,bash的可执行文件往往是/bin中最大的几个实用程序之一, 客观反映了它的复杂性。...对于Linux来说一般是bash,但也可以重新设定或切换到其它的 Shell。 设置好的环境变量又可以被所有当前用户所运行的程序所使用。...对于bash这个Shell程序来说,可以通过 变量名来访问相应的环境变量。 Linux 的环境变量具有继承性,即子shell 会继承父shell 的环境变量。...当前shell中的变量也叫本地变量,很显然本地变量中肯定包含环境变量。Linux 的本地变量的非环境变量 不具备继承性。...例如: source ~/.bash_profile 2.export : 用于把变量变成当前shell和其子shell的环境变量,存活期是当前的shell及其子shell

2.6K60

linux bash环境变量简单总结

来源链接:http://www.178linux.com/8005 原创文章,如有转载,请注明原文地址 一.环境变量简介 Linux是一个多用户的操作系统。...一般的Linux发行版中,bash的可执行文件往往是/bin中最大的几个实用程序之一, 客观反映了它的复杂性。...对于Linux来说一般是bash,但也可以重新设定或切换到其它的 Shell。 设置好的环境变量又可以被所有当前用户所运行的程序所使用。...对于bash这个Shell程序来说,可以通过 变量名来访问相应的环境变量。 Linux 的环境变量具有继承性,即子shell 会继承父shell 的环境变量。...例如: source ~/.bash_profile 2.export : 用于把变量变成当前shell和其子shell的环境变量,存活期是当前的shell及其子shell,因此重新登陆或者关闭当前 shell

2.8K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Bash 环境变量的那些事

    bash 变量,尤其是讨厌的环境变量,已经是一个老生常谈的话题了。我们也更应该对它有一个详细的了解,让它为我们所用。 下面就打开终端,开始吧。...环境变量 HOME (LCTT 译注:双关语)除了是你脱下帽子惬意休息的地方,同时也是 Linux 中的一个变量,它是当前用户主目录的路径: echo $HOME 以上这个命令会显示当前用户的主目录路径...实际上,Linux 系统中每一个用户的 HOME 变量都是不一样的,当然你也可以这样自行更改 HOME 变量的值: HOME=/home//Documents 以上这个命令将会把...首先定义一个变量: robots="R2D2 & C3PO" 然后执行: bash 现在是在 bash shell 中创建了一个子 shell。...你也可以使用 env 命令查看所有环境变量。

    1.5K40

    Linux下环境变量配置方法梳理(.bash_profile和.bashrc的区别)

    在linux系统下,如果下载并安装了应用程序,在启动时很有可能在键入它的名称时出现"command not found"的提示内容。...如果每次都到安装目标文件夹内,找到可执行文件 来进行操作就太繁琐了,这种情况下就涉及到环境变量PATH的设置问题,而PATH的设置也是在linux下定制环境变量的一个组成部分。.../etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取. ~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的...默认情况下,他设置一些环境变量,执行用户的.bashrc文件. ~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取. ~/....bash_logout: 当每次退出系统(退出bash shell)时,执行该文件.

    2.8K60

    升级linux bash

    There is NO WARRANTY, to the extent permitted by law. 3)Linux Bash严重漏洞修复紧急通知(2014年9月25日更新) 日前Linux官方内置...: env x='() { :;}; echo vulnerable' bash -c "echo this is a test" 如果在一个含有版本号小于bash 4.3的linux或者unix系统上执行以上命令...4)漏洞原理及分析 该脚本的出现引起了我技术人员的关注,其中env为一个系统命令,该命令让系统创建一个环境变量x='() { :;}; echo vulnerable'并且带着这个环境变量的值执行bash...对bash详细分析后得知bash在处理含有函数定义诸如”() { :;};”的环境变量赋值的代码上存在设计缺陷,错误地将函数定义后面的字符串作为命令执行。...5)漏洞存在条件 任何已知程序,只要满足以下两个条件就可以被用来通过bash漏洞导致任意命令执行: 1、程序在某一时刻使用bash作为脚本解释器处理环境变量赋值; 2、环境变量赋值字符串的提交取决于用户输入

    7.3K90

    linux环境变量

    环境变量就是linux系统中存在内存上的键值对, 主要被用于程序或者系统,动态影响 特性: 动态性: 运行时修改 继承性: 子进程可继承父进程的环境变量,子进程可修改,但不影响父进程环境变量的值 隔离性...全局变量 全局变量就是父进程的环境变量对于生成的所有子进程均可见 exp: 父进程bash创建全局变量var, 子进程可以读到,也可修改,但修改后不影响父进程 3....export PATH="/new/path:$PATH" 添加到PATH末尾: export PATH="$PATH:/new/path" 永久性添加到PATH 修改home下的bashrc文件,但若更新linux..., $HOME/.bash_login, $HOME/.profile, $HOME/.bashrc 只对当前用户生效 加载顺序 $HOME/.bash_profile --- > $HOME/.bash_login...,要用单引号或者双引号引起来,避免当成其他命令处理 参考linux命令与shell脚本编程大全(第4版)

    79110

    【Linux】环境变量

    /process能执行文件 我们在《打破Linux神秘的面纱》一文中提到过,process的写法是指令写法,而指令就是存储在bin目录下的可执行程序,我们可以通过root账户将可执行程序移动到bin...以上我们所运行的进程,都是bash的子进程(bash就是命令行解释器,所有我们所创建的进程的父进程或祖宗进程),bash本身在启动的时候,会从操作系统的配置文件中读取环境变量信息,子进程会继承父进程交给我们的环境变量...8、本地变量 和环境变量不同,本地变量只在本bash内部有效,不会被继承,通过MYENV="内容"定义本地变量名和内容,在子进程中不可被访问 我们知道我们在命令行(bash)中所创建的进程都是命令行...(bash)的子进程,所以我们的本地变量是没办法在这种进程中显示的,只有将它export进环境变量,才可以被命令行子进程访问 9、内建命令 Linux中命令分为普通命令和内建命令,普通命令是要通过bash...创建子进程完成的,而内建命令bash自己亲自执行,bash不创建子进程,相当于bash调用自己内部的函数 常见的内建命令有echo,cd等 若echo是外部命令,那么在输出本地变量SUPER值的时候是访问不到的

    2K10

    Linux:环境变量

    ——> 因为环境变量PATH,他是Linux系统指令搜索路径,用echo  $PATH(需要加)可查看系统能够找到的路径 ,其中路径以 “ :”为分隔符  (比如pwd能直接使用就是因为/usr/bin...=value形式的变量,不同的环境变量有不同的用户,通常具有全局属性       如何理解全局属性,其实本质上就是由于环境变量表,我们所执行的进程都是子进程,bash本身在启动的时候,会从操作系统的配置文件中读取环境变量信息...本地变量只会在bash内部有效,不会被继承 set ——>查看所有的环境变量的本地变量 export ……——>将本地变量变成环境变量 unset……——>清除环境变量 什么情况下需要本地变量呢...比如echo、pwd、cd…… 因为他们是内建命令 常规命令:通过创建子进程完成的 内建命令:bash不创建子进程,而是由自己亲自执行,类似与bash调用了自己一些的,或者是系统提供的函数   所以一般的命令...,我们可以知道bash应该是使用了fork函数创建了子进程去完成的,但是内建命令就是直接去完成 1.4.7 模拟实现内建命令cd chdir 1.5  再次总结环境变量 环境变量(environment

    4.3K10
    领券