profile 文件

来源:互联网 发布:ubuntu虚拟机上网设置 编辑:程序博客网 时间:2024/06/09 09:03

1、Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。
2、常在/etc/profile文件中修改环境变量,在这里修改的内容是对所有用户起作用的。使用修改.bashrc文件进行环境变量的编辑,只对当前用户有用。使用修改 /etc/profile 文件进行环境变量的编辑,是对所有用户有用。

以下主要操作将在该文件中进行

3、如何添加环境变量。
 例如添加”NAME=liheng“ 。在profile文件的最后添加如下内容export NAME=liheng变量值liheng可以加引号也可以不加,效果一样。
4、在profile文件添加或修改的内容需要注销系统才能生效。

5、重复定义变量怎样理解。
经常出现的是对PATH变量的定义。
例如:在peofile文件默认对PATH变量都有设置PATH=¥¥¥¥¥¥¥(记不住了),在以后可能在对PATH设置,一般都加在 profile 文件的最后PATH=······(打个比方)。而系统之中认定的PATH=·······¥¥¥¥¥¥¥¥¥,也就是说相同名字的环境变量,后写入的先起作用(通俗地讲)。
6、特殊字符介绍。
例如在profile中有如下内容,通过以下内容说明特殊符号的用法。
export A=/q/jing:aaa/cc/ld
export B=.:/liheng/wang export A=/cd/cdr:$A
大家注意红色的符号:
: 表示并列含义,例如A变量值有多个,用:符号进行分离。
. 表示你操作的当前目录。例如pap命令会查找B环境变量。

7、在LInux下profile的拥有着:

 如是/etc下的,是root。 如是/home下的,属于/home下的这个用户。     

8、使用env命令显示所有的环境变量 。在命令提示符下键入env就行了。

  set命令显示所有本地定义的Shell变量。

9、常见的环境变量 PATH:决定了shell将到哪些目录中寻找命令或程序;

    HOME:当前用户主目录;

   MAIL:是指当前用户的邮件存放目录;

SHELL:是指当前用户用的是哪种Shell。

HISTSIZE:是指保存历史命令记录的条数
LOGNAME:是指当前用户的登录名。

HOSTNAME:是指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的。

LANG/LANGUGE:是和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。

 

 登录shell执行了两个特殊文件,

一个是:\etc\profile, 这个文件由系统管理员设置,通常做一些如检查是否有邮件,设置默认的创建文件的掩码,给某些表转到处变量赋值,已经任何管理员希望每当用户登录时都需要执行的命令。
第2个自动执行的文件是宿主目录下的.profile文件。当你得到账户时系统管理员会给一个默认的 .profile 文件。
看看它现在是什么样的:
$cat $HOME/.profile
PATH="bin:/usr/bin:usr/lbin:.:"
export PATH
$
这里看到的是个小的.profile文件,它只是设了PATH,然后将它导出。你可以修改自己的.profile文件,使他包含任何希望每次登陆时都要执行的命令。设置可以在自己的.profile文件中放置命令,覆盖/etc/profile的设置(通常是环境变量)。


注意/etc/profiles 和.profile是有登录shell执行的,
$./etc/profile
$. .profile
$

这就意味着程序执行后他们对环境的改变会保留下来

 

使用 su 命令更改用户后,需要执行一下该用户的 .profile 文件. 就像做一个初始化一样。

su - spsausr 

 . /db2/ldid111/sqllib/db2profile
0 0