linux etc profile的含义是什么

95次阅读
没有评论

共计 2723 个字符,预计需要花费 7 分钟才能阅读完成。

今天丸趣 TV 小编给大家分享一下 linux etc profile 的含义是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

linux etc profile 是 linux 环境变量的相关文件,在该文件中修改的内容是对所有用户起作用的;linux 用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。

Linux /etc/profile 文件详解

linux /etc/profile 文件的改变会涉及到系统的环境,也就是有关 Linux 环境变量的东西,学习 Linux 要了解 Linux profile 文件的相关原理,这里对则以文件进行具体分析。这里修改会对所有用户起作用。

1、Linux 是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。

2、常在 /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 环境变量。

在 /home 键入 pap 命令,系统首先在 /home 目录下(即当前路径)查找关于 B 的内容,a href= http://www.%3Ca%20class%3D/ channel_keylink = target= _blank >

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

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

8、常见的环境变量

PATH:决定了 shell 将到哪些目录中寻找命令或程序

HOME:当前用户主目录

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

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

HISTSIZE:是指保存历史命令记录的条数。

LOGNAME:是指当前用户的登录名。

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

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

PS1:是基本提示符,对于 root 用户是 #,对于普通用户是 $。

PS2:是附属提示符,默认是“”。可以通过修改此环境变量来修改当前的命令符,比如下列命令会将提示符修改成字符串“Hello,My NewPrompt :)”。

# PS1=”Hello,My NewPrompt :)“

9、使用修改.bashrc 文件(在用户的家目录下)进行环境变量的编辑,只对当前用户有用。使用修改 /etc/profile 文件进行环境变量的编辑,是对所有用户有用。大家一定要注意区别。

10、Linux profile 文件在系统启动时将被运行。大家可以在里面加入其他命令,但是一定要加正确,不然的话系统会启动不起来的。

/etc/profile , /etc/profile.d,~/.bashrc, ~/.bash_file, 这几个文件的区别是啥,可能很多新人,很疑惑。即使很多配置一些软件环境变量的人也是很疑惑

~/.bashrc, ~/.bash_file 这两个看到~这个符合,应该明白,这是宿主目录下的,即里面的环境变量也叫 shell 变量,是局部的,只对特定的 shell 有效,修改过别忘了 source 命令一下。

/etc/profile , /etc/profile.d,前面的是文件,后面一看也就明白.d 表示目录,/etc/profile 里面的变量是全局的,对所有用户的 shell 有效。

我们每当在终端输入命令,系统会有响应,最重要的就是搜索路径啦,可以通过 echo $PATH 看到,系统所以命令的搜索路径,以:符合分开。

当我们下载一个软件,如果我们希望不加入路径就能启动该程序,如在 shell 中任意位置输入 eclipse,即启动程序,我们就可以把 eclipse 程序的可执行程序的路径加入到 PATH 中即可。

其实我们还可以有另一种方法,请看如下代码

# The default umask is now handled by pam_umask.
# See pam_umask(8) and /etc/login.defs.

if [ -d /etc/profile.d ]; then #  判断 /etc/profile.d  是不是一个目录  for i in /etc/profile.d/*.sh; do # 如果是一个目录,到该目录下,取出每一个 shell 程序  if [ -r $i ]; then # 如果该 shell 可以执行  . $i #  则执行它  fi  done  unset i fi

改代码是 /etc/profile 中的部分内容,说明 /etc/profile 会首先执行 /etc/profile.d/ 目录下的所有 *.sh 文件。这也就给我们一个可扩展的思路。如果我们需要配置 JDK, 那么就在 /etc/profile.d/ 下创建 jvm.sh 文件如果需要配置 ant, 那么就在 /etc/profile.d/ 下创建 ant.sh 文件
这样获得的效果一致,不信你自己试试。

然后,在对应的配置文件里面添加你自己的配置就可以了。

以上就是“linux etc profile 的含义是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,丸趣 TV 小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-12发表,共计2723字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)