linux 用户环境变量介绍
先来介绍以下linu中的环境变量
Linux 的变量可分为两类:环境变量和本地变量
环境变量,或者称为全局变量,存在与所有的shell 中,在你登陆系统的时候就已经有了相应的系统定义的环境变量了。Linux 的环境变量具有继承性,即子shell 会继承父shell 的环境变量。
本地变量,当前shell 中的变量,很显然本地变量中肯定包含环境变量。Linux 的本地变量的非环境变量不具备继承性。
Linux 中环境变量的文件
当你进入系统的时候,linux 就会为你读入系统的环境变量,这些环境变量存放在什么地方,那就是环境变量的文件中。Linux 中有很多记载环境变量的文件,它们被系统读入是按照一定的顺序的。
1. /etc/profile :
此文件为系统的环境变量,它为每个用户设置环境信息,当用户第一次登录时,该文件被执行。并从/etc/profile.d 目录的配置文件中搜集shell 的设置。
这个文件,是任何用户登陆操作系统以后都会读取的文件(如果用户的shell 是csh 、tcsh 、zsh ,则不会读取此文件),用于获取系统的环境变量,只在登陆的时候读取一次。
假设用户使用的是BASH ,那么
2. /etc/bashrc :
在执行完/etc/profile 内容之后,如果用户的SHELL 运行的是bash ,那么接着就会执行此文件。另外,当每次一个新的bash shell 被打开时, 该文件被读取。
每个使用bash 的用户在登陆以后执行完/etc/profile 中内容以后都会执行此文件,在新开一个bash 的时候也会执行此文件。因此,如果你想让每个使用bash 的用户每新开一个bash 和每次登陆都执行某些操作,或者给他们定义一些新的环境变量,就可以在这个里面设置。
3. ~/.bash_profile :
每个用户都可使用该文件输入专用于自己使用的shell 信息。当用户登录时,该文件仅仅执行一次,默认情况下,它设置一些环境变量,执行用户的.bashrc 文件。
单个用户此文件的修改只会影响到他以后的每一次登陆系统。因此,可以在这里设置单个用户的特殊的环境变量或者特殊的操作,那么它在每次登陆的时候都会去获取这些新的环境变量或者做某些特殊的操作,但是仅仅在登陆时。
4. ~/.bashrc :
该文件包含专用于单个人的bash shell 的bash 信息,当登录时以及每次打开一个新的shell 时, 该该文件被读取。
单个用户此文件的修改会影响到他以后的每一次登陆系统和每一次新开一个bash 。因此,可以在这里设置单个用户的特殊的环境变量或者特殊的操作,那么每次它新登陆系统或者新开一个bash ,都会去获取相应的特殊的环境变量和特殊操作。
~/.bash_logout :
当每次退出系统( 退出bash shell) 时, 执行该文件。
几个命令
env 和printenv
这两个变量用于打印所有的环境 变量:
更加详细的介绍可以参考:http://www.cnblogs.com/growup/archive/2011/07/02/2096142.html
最近配置hudson 发布项目,ssh 无密码登路成功,执行命令总是出错。
执行的命令:
ssh root@10.0.0.1 'jar -xvf sample.war'。
错误信息:
bash: jar: command not found。
信息提示说的很清楚在bash中无法找到命令’jar‘。
但是可以通过xshell工具登录到10.0.0.1输入用户名和密码 是执行 jar 命令。
这里需要注意通过用户名和密码登录 与 ssh无密码登录的环境变量区别。
A ssh 无密码登录 之后加载用户自己的环境变量。环境变量文件在用户目录下 .bashrc 和.bash_profile文件中。不能加载/ect/profile文件中的环境变量。
B 通过用户名和密码 可以加载/ect/profile文件中的环境变量。
useradd 添加用户
userdel 删除用户
groupadd 添加用户组
groupdel 删除用户组
linux 用户环境变量介绍相关推荐
- Linux用户环境变量(转载)
(转)Linux用户环境变量 环境变量就是系统或软件设置的一些参数,用户环境变量就是用户登录系统后,都有自已专用的运行环境. 在Windows系统中用户环境变量保存在用户家目录,Linux也是同样的. ...
- Linux用户环境变量
1)用户环境变量配置文件路径,以abc用户为例: /home/abc/.bash_profile 2)修改配置文件后不会立即生效,需运行:source /home/abc/.bash_profile ...
- linux系统丢失用户环境文件夹,Linux 用户环境变量丢失故障及解决
出现问题:有些时候,我们登录Linux系统时,会出现命令行开头为: -bash-4.1$ 正常情况下为: [gongli@mode-6 ~]$ 问题原因:在该用户的家目录下没有环境变量,或者环境 ...
- Linux 用户环境变量的设置
环境 Linux:centos6.5 工具:CRT 前言 最近在服务器上遇到了这么一个问题: 1.有两个账号:developer和webuser: 其中webuser用户可以直接使用play命令,比如 ...
- Linux 用户环境变量丢失故障及解决
出现问题:有些时候,我们登录Linux系统时,会出现命令行开头为: -bash-4.1$ 正常情况下为: [gongli@mode-6 ~]$ 问题原因:在该用户的家目录下没有环境变量,或者环境变量出 ...
- linux用户环境变量配置文件问题 profile 和 ~/.bashrc区别
最近大数据集群启动程序遇到一些环境变量失效问题: 首先区分两个概念 交互式shell:shell等待你的输入,并且执行你提交的命令.这种模式被称作交互式是因为shell与用户进行交互.这种模式也是大多 ...
- linux系统环境变量及用户环境变量的配置
linux环境变量和Windows的环境变量一样,分系统环境变量和用户环境变量,系统环境变量对所有用户有效,而用户环境变量只对当前用户有效,下面以jdk为例进行两种环境变量的配置. 1.系统环境变量配 ...
- linux配置定时任务的用户环境变量
linux配置定时任务的用户环境变量 在Linux系统中,执行定时任务时,默认加载的是用户环境变量 ~/.bashrc ,不会加载系统变量,而要使用系统变量,可以用如下方式: # Example ...
- Linux中环境变量文件及配置
一.环境变量文件介绍 转自:http://www.cnblogs.com/mengyan/archive/2012/09/04/2669894.html Linux中环境变量包括系统级和用户级,系统级 ...
最新文章
- hdu3829(最大独立集)
- 线性回归api深度介绍
- 2019年1月份A项目面试纪要
- Dexposed:Android平台免Root无侵入AOP框架
- 《Effective Java》学习笔记 第二章 创建和销毁对象
- 通过Spring Data Neo4J操作您的图形数据库
- 常用的加密算法---数字摘要
- Dll学习一_Dll 创建并动态引用窗体且释放窗体Demo
- 智慧交通day02-车流量检测实现03:辅助功能(交并比and候选框的表现形式)
- django 1.8 官方文档翻译:13-3 日志
- JS 里的数据类型及几个操作
- python中文字体下载_对Python生成汉字字库文字,以及转换为文字图片的实例详解...
- git把一个分支上的某次提交同步到另一个分支上
- 用计算机弹奏天下,天下手游大荒怪题答题器 大荒怪题题库及答案大全
- 戴尔台式计算机usb驱动,dell服务器和电脑不支持usb2.0设备安装系统的解决方案方法...
- React Native布局实践:开发京东客户端首页(四)——首页功能按钮及控件封装
- 你知道判断高防抗ddos的能力吗?
- Linux下如何创建和取消软连接
- 乒乓球拍板和皮子世界排名
- python中输出某段文字_怎样用Python提取文本中某一段文字
热门文章
- (八):docker swarm简单使用
- Mysql的课外补充与进阶
- mysql项目案例电影_Python+Django+Mysql实现在线电影推荐系统 基于用户、项目的协同过滤推荐在线电影系统 代码实现 源代码下载...
- 俄罗斯方块java消行_Tetris ai 俄罗斯方块自动消行程序
- LeetCode Weekly Contest 199
- IEAD中运行代码,出现找不到或无法加载主类
- windows启动引导管理
- 不是单身选择了我 ,而是我选择了单身
- 为什么销售团队要用crm销售管理系统?
- 普里姆(Prim)算法和克鲁斯卡尔(Kruskal)算法