linux环境变量管理器,运维 - linux(ubuntu) 环境变量管理 (持续更新)

运维 - linux(ubuntu) 环境变量管理 (持续更新)

注: 本教程以 Ubuntu16.04 操作, 请细看. 如果看完还不明白, 联系我, 我给你发红包.

一, 查看环境变量:

方法 1: 直接用 $PATH 命令:wafa@ubuntu:~$ $PATH

bash:/home/king/bin:/home/king/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/go-gtk/gtk:/snap/bin:.:/usr/local/go/bin:Nosuch fileordirectory

方法 2: 用 export 命令. 如终端命令行输入 export 后, 结果中的 PATH 就是环境变量:king@ubuntu:~$export

declare-x CLUTTER_IM_MODULE="ibus"

declare-x COMPIZ_BIN_PATH="/usr/bin/"

declare-x COMPIZ_CONFIG_PROFILE="ubuntu"

declare-x DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-BQwiluABuc"

declare-x PATH="/home/wafa/bin:/home/wafa/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/go-gtk/gtk:/snap/bin:.:/usr/local/go/bin"

declare-x PWD="/home/wafa"

declare-x DEFAULTS_PATH="/usr/share/gconf/ubuntu.default.path"

...

方法 3: 使用 env 命令打印所有的环境变量wafa@ubuntu:~$ env

XDG_VTNR=7

LC_PAPER=en_US.UTF-8

LC_ADDRESS=en_US.UTF-8

XDG_SESSION_ID=c2

PATH=/home/wafa/bin:/home/wafa/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/go-gtk/gtk:/snap/bin:.:/usr/local/go/bin

方法 4: 用 echo $PATH(同法一)

二, 了解环境变量

环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数.

个人理解 (比较通俗): 你输入命令时, 系统会自动的去指定的路径下去寻找你输入的指令文件. 因此, 配置好环境变量 后只要输入程序的名称, 系统就会自动搜索到你程序的位置, 而不会再出现 command not found 这样的问题了.

三, 和环境变量有关的文件:

/etc/profile -- 此文件为系统的每个用户设置环境信息, 当用户第一次登录时, 该文件被执行. 并从 / etc/profile.d 目录的配置文件中搜集 shell 的设置;

/etc/environment -- 在登录时操作系统使用的第二个文件, 系统在读取你自己的 profile 前, 设置环境文件的环境变量;

/etc/bashrc -- 为每一个运行 bash shell 的用户执行此文件. 当 bash shell 被打开时, 该文件被读取;

/home/king/.profile -- 用户 king 的 shell 信息, 当用户登录时, 该文件仅仅执行一次, 默认情况下, 它设置一些环境变量, 执行用户的. bashrc 文件;(注: king 为当然登录的用户, 每个用户都有自己的家目录, 即在 / home 文件夹下.)

/home/king/.bashrc -- 用户 king 的 bash shell 的 bash 信息, 当登录时以及每次打开新的 shell 时, 该文件被读取;

认识以上 5 个文件之后, 我们设置环境变量的方法也就有了.

注: 前 3 个针对所有的用户, 需要 sudo 权限设置, 后两个针对当前用户.

四, 环境变量的添加与删除

请认真阅读以上步骤及 5 个文件, 这样后面就很好理解了.

1. 对所有用户都生效:

1). 方法一: 直接 sudo 权限编辑 / etc/enviroment 文件,

/etc/environment 文件, 其内容如下:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

注: 作用域: 全局的, 永久性的. 在环境变量 PATH 中添加你要添加的路径即可, 注意以 ":" 分隔分个路径.

2). 方法二: 修改 / etc/profile 文件. 此文件不保存环境变量信息, 但在登录时, 系统会根据此文件内容对环境变量进行设置.exportPATH=$PATH:/usr/local/sbin:/usr/local/bin:

exportPATH=/usr/local/share:$PATH

注:$PATH 指代添加 your path 前的环境变量. 即在第一行的基础上再另外添加的环境变量. 作用域: 全局的, 永久性的.

3). 方法三: 修改 / etc/bashrc. 这个文件同样不是为了保存环境变量, 只是在使用 bash shell 时进行设置而已, 所以设置方法和二中一样:exportPATH=$PATH:/usr/local/sbin:/usr/local/bin:

exportPATH=/usr/local/share:$PATH

注: 作用域: 全局的, 永久性的.

对于 / etc/bashrc 文件, 修改的作用于用户, 但对于~/.bashrc 文件, 修改的仅仅作用于当前用户. 这种修改的作用也是永久性的.

2. 仅对当前用户生效

1). 方法一: 修改~/.profile 文件. 本质和修改 / etc/profile 一样, 但这种仅仅修改了当前用户自己的配置文件. 作用域: 当前用户, 永久性的.

2). 方法二: 修改~/.bashrc 文件. 本质和修改 / etc/bashrc 一样. 不保存环境变量, 只是在当前用户使用 bash shell 时进行设置而已. 作用域: 当前用户, 永久性的. 设置同修改 / etc/bashrc 一样.

3. 临时生效

1). 方法一: 在 Terminal 中使用 shell 命令

export PATH=$PATH:[your path1]:[your path2]:[...]

2). 方法一: 在 Terminal 中使用 shell 命令

export PATH=[your path1]:[your path2]:[...]:$PATH

注: 上面两种方法是暂时的生效. 关闭终端设置也就失效了. 作用域: 仅限于当前终端, 其他终端中这个设置不会启作用.

五, 设置生效

输入 env 命令查看所有环境变量.

输入 echo $PATH 命令查看 PATH 环境变量

这时我们就可以在 PATH 变量后看到相关的修改了.

是否发现有的设置后设置并没有及时生效???

你猜的对, 这样就可以生效了:

法一: 你需要考虑重启或者注销后重新登录了 (请思考: 哪个需要重启, 哪个需要重新登录? 等我后续闲了再给你答案.)

法二: 使用 source 命令. 在命令行输入:

source [file name]

注:

1,[file name] 为你修改的文件名字的路径, 绝对路径和相关路径都可以.

2, 以上方法只需要一种即可, 但要根据个人需要选择适用的方法.

3, 使用 export 命令设置的环境变量是临时性质且局部的, 因此只需要关闭这个 Terminal 就好了.

是不是没有你想象的那么难???

来源: http://www.jianshu.com/p/0a70d5fb8aba

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值