一.在理解linux下环境变量及文件执行顺序前,要先理解下面的相关概念:
<!--[if !supportLists]-->1.<!--[endif]-->login shell:用户通过终端登录凭借用户名和密码登录控制台的动作是login shell,也就是说最终 会调用login命令的操作都可称之为login shell。
<!--[if !supportLists]-->2.<!--[endif]-->non-login shell:用户在图形界面启动一个terminal,或者执行/bin/bash,/usr/bin/bash都属于 non-login shell。
3.对于login shell读取文件的顺序是:/etc/profile
~/.bash_profile
~/.bash_login
~/.profile
/etc/profile 是必须要执行的,后面3个谁存在就执行谁(然后后面的就不会再执行)。
关于~ 是什么目录:表示当前登录用户的用户目录(可以通过cd ~ pwd 来得知)
4.
4.1./etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行
通过查看脚本的注释介绍,表明该脚本是用于系统环境和启动程序的,用户登录设置的功能和别名则 在/ect/bashrc脚本中,所以,/etc/profile是所有用户的环境;然后脚本会在执 行/etc/profile.d/*.sh的相关脚本,用来搜集shell的设置(具体的脚本未截图),若其中有环境设定的 话,也会被全局引用。
4.2.我的linux上存在.bash_profile脚本(root用户)
可以看出,先判断是否存在.bashrc脚本,若存在的话,执行(而该脚本文件主要用来设置别名的,从注 释可以看出);然后就会来设置特殊的环境和开始程序(即是用户级别的设置)。
4.3.现在我们查看.bashrc脚本
脚本设置了几个命令别名;然后判断是否存在/ect/bashrc脚本,存在就执行
4.4.我们查看/ect/bashrc脚本
可以看出使用来对非登录的shell设置。
总结:通过上面的脚本查看,大致总结一下,环境设置的文件执行顺序Login shell配置文件执行顺序:
/etc/profile-->/etc/profile.d/*.sh-->~/.bash_profile-->~/.bashrc-->/etc/bashrc
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
/etc/profile.d/*.sh:用来搜集shell的设置
~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息(环境变量或程序 等),当用户登录时,该文件仅仅执行一次!即是为用户而定制脚本文件。
non-login shell配置文件执行顺序:
~/.bashrc-->/etc/bashrc-->/etc/profile.d/*.sh
~/.bashrc: 该文件包含命令别名信息,也可以设置环境或程序等(登录时或者每次打开新的shell 时---即non-login shell,该文件就被读取)。
/etc/bashrc:该脚本在Login shell和non-login shell都会被执行,但我们通过上面脚本查看用来 对非登录的shell设置
二:通过ls -a 查看root用户的工作目录
.bash_logout:脚本不难理解,用户退出时,要被执行的脚本
.bash_history:即是对该用户的执行的脚本命令的记录(histroy命令即对该文件查看)。
相关推荐
理解这些环境变量配置文件的工作原理对于管理和定制Linux环境至关重要,无论是为了优化个人工作流程还是配置系统级的设置。正确地设置环境变量可以提高效率,确保软件的正确运行,并使系统管理更加有序。
在Linux操作系统中,环境变量扮演着至关重要的角色,它们定义了用户进程的运行环境,包括查找可执行文件的路径、shell的配置等。本文主要针对一个特定问题进行分析:在Linux,尤其是Redhat Enterprise Linux 5中,...
总之,理解和配置Linux Shell的环境变量文件是管理和优化工作环境的关键。不同的Shell有不同的配置文件和执行顺序,了解这些细节能帮助我们更有效地定制我们的工作流程。同时,要注意修改这些文件时要谨慎,避免对...
Linux环境变量设置总结 Linux 环境变量是一组动态命名的值,可以影响 shell 的行为和系统的执行环境。在 Linux 系统中,环境变量可以分为两类:全局环境变量和局部环境变量。全局环境变量是指对所有用户和shell都...
总结来说,配置Linux环境变量涉及到理解不同配置文件的作用和执行时机,以及如何正确地修改和应用这些变量。正确设置环境变量能极大地提高用户的工作效率,确保系统和应用程序的正常运行。在进行修改时,请确保了解...
下面详细介绍在Linux环境下设置环境变量的方法。 1. **/etc/environment**: 这个文件主要用于设置全局环境变量,适用于所有用户和所有进程。它不包含脚本或可执行命令,只使用键值对(KEY=VALUE)的方式定义变量...
了解Linux环境变量的配置文件至关重要,因为它们定义了不同级别的环境变量设置。以下是一些主要的配置文件及其用途: 1. `/etc/profile`:这是系统级的环境变量设置文件,对所有用户生效,当用户首次登录时执行。 2...
在描述中提到的"环境变量自动配置"通常是由JDK的安装程序完成的,它会根据操作系统的类型(如Windows, macOS, 或Linux)来执行相应的配置步骤。在Windows上,这可能通过创建或修改注册表项来实现;在Unix-like系统中...
总结来说,理解Linux环境变量的加载机制对于正确配置Crontab任务至关重要。通过正确地源码加载配置文件或在任务中直接设置环境变量,可以确保Crontab能够获取并使用必要的环境配置。在实际操作中,应根据具体需求...
Linux 开机服务启动顺序 ...默认情况下,他设置一些环境变量,执行用户的 .bashrc 文件。~/.bashrc 该文件包含专用于你的 bash shell 的 bash 信息,当登录时以及每次打开新的 shell 时,该文件被读取。
另外,提供的`使用脚本设置全局环境变量.docx`文档可能包含了更详细的步骤和示例,包括如何在不同操作系统下编写和执行脚本,以及如何验证环境变量是否成功设置。可能还涵盖了如何处理特殊字符、空格以及如何在脚本...
理解这些环境变量文件及其配置,对于管理用户环境、调试程序以及优化Linux系统性能至关重要。了解这些基础知识有助于提升Linux系统的管理和使用效率。通过深入研究和实践,你可以更好地定制你的Linux环境,满足特定...
2. **PATH**: 这个环境变量用于指示操作系统查找可执行文件的路径。当在命令行输入`java`, `javac`等命令时,系统会在PATH中列出的目录下寻找对应的可执行文件。你需要将%JAVA_HOME%\bin添加到PATH中,这样系统就能...
- **路径查找**:当我们在命令行中输入一个程序名称时,系统会按照`PATH`环境变量中设定的路径顺序查找相应的可执行文件。 - **软件配置**:很多软件需要知道其依赖项的位置,如库文件、配置文件等,这些信息通常...
比如,如果你在`/opt/testApp`目录下安装了一个名为`testApp`的应用,其可执行文件位于`bin`子目录,库文件位于`lib`子目录,你可以通过以下命令添加环境变量: ```bash export PATH=/opt/testApp/bin:$PATH export...
`U-Boot`作为引导加载程序,它在硬件启动后运行,为Linux内核提供一个稳定的启动环境,并将内核传递到内存中执行。在这个过程中,`U-Boot`和`kernel`之间会进行机器码和环境变量的交互,以确保系统能够正确配置和...
在Linux环境下,对Oracle数据库进行批量操作是一项常见的任务,尤其对于系统管理员和DBA来说,高效地执行SQL脚本可以显著提升工作效率。本篇将详细讲解如何利用shell脚本来批量执行Oracle数据库脚本,以及涉及的相关...
对于Linux或Mac用户,环境变量的设置通常在`.bashrc`或`.bash_profile`文件中进行,使用`export`命令定义变量。 此外,压缩包中的“java基础学习之环境变量设置详解”文档可能包含了更详细的步骤和注意事项,例如...
一是将程序或脚本的可执行文件复制到PATH环境变量中的某个目录下,例如`/usr/local/bin`。二是临时或永久地修改PATH变量,添加新的路径。临时修改可以通过在Shell会话中执行`export PATH=$PATH:/path/to/your/...
在Linux环境中,使用C语言开发一个音乐播放器可以是一个相当有挑战性的项目,因为它涉及到多个核心的编程概念和技术。这个项目特别提到了调用Mplayer作为后端播放引擎,Mplayer是一个强大的命令行媒体播放器,支持...