bash功能特性六 bash操作环境

一、bash查找命令的顺序

    1、以相对路径或绝对路径执行的命令;

    2、由alias找到该命令来执行;

    3、由bash内置的命令来执行;

    4、通过$PATH这个变量的顺序找到的第一个命令来执行。

1.png

    另外,命令只有在第一次执行真正查找操作,而查找结果会缓存,再次使用时直接从缓存中调用;

    查看此缓存使用hash命令;

        -d:清除缓存内容;

        -r:清空缓存。

2.png

二、环境配置文件 

    环境配置文件用于初始化bash的操作环境,根据用户的登录方式配置文件可以分为交互式登录和非交互式登录两类。

    1、交互式登录

        所谓交互式登录就是直接通过终端输入账号和密码登录,使用su -l USERNAME  su – USERNAME命令。

        配置文件根据其作用范围又划分为全司配置文件和用户配置文件。

        1)全局配置文件:

            /etc/profile:每个用户登录bash时一定会读取的配置文件。

                根据uid来设置总体的配置环境,同时还会调用一些其它的配置文件,如:/etc/profile.d/*.sh。

/etc/profile.d/*.sh:/etc/profile配置文件的组合部分。

    定义了bash中的颜色、语系、命令别名等。       

        2)用户配置文件:

            ~/.bash_profile:在读取完全局配置文件后,读取此配置文件。

                定义了环境变量$PATH,并且如果~/.bashrc文件存在则调用此文件。

            ~/.bashrc:~/.bash_profile文件的组合部分。

                定义了命令别名信息,并且如果/etc/bashrc文件存在则调用此文件。

            /etc/bashrc:~/.bashrc文件的组合部分,最后读取此配置文件。

                根据UID规定umask值及提示符,并且调用/etc/profile.d/*.sh文件。

        3)配置文件的读取顺序

            /etc/profile –> /etc/profile.d/*.sh –>  ~/.bash_profile –> ~/.bashrc –> /etc/bashrc

    2、非交互式登录

        所谓非交互式登录就是指不需要输入账号和密码登录,其登录方式有:

            a、使用su USERNAME合;

            b、图形界面下打开的终端;

            c、执行脚本。

        1)全局配置文件

            /etc/bashrc

        2)用户配置文件

            ~/.bashrc

        3)配置文件的读取顺序

            ~/.bashrc –> /etc/bashrc –> /etc/profile.d/*.sh

    3、使配置文件生效

        如果对配置文件进行了修改后,配置文件并不能马上生效,可以使用下面的方法来加载配置文件:

            a、退出并重新登录;

            b、让bash重读此配置文件,方法如下:

                . FILE 或 source FILE

 

原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/3264

(0)
petmasterpetmaster
上一篇 2015-04-21
下一篇 2015-04-22

相关推荐

  • 什么叫Linux

    什么叫linux:     Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。 谁编写的linux: Linux的出现,最早…

    Linux干货 2017-03-27
  • 马哥教育网络班22期+第七周课程练习

    1、创建一个10G分区,并格式为ext4文件系统;   (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@localhost ~]# fdisk /dev/sdb Welcome to fdisk (uti…

    Linux干货 2016-11-07
  • linux哲学思想

    有关运维,在哲学上的思想。 正确的哲学思想在我看来就是公理,就是像1+1=2一样大家都必须得遵守的公理。 当然,所有的公理都是有前提的,而有关linux的哲学思想当然是在linux环境这个大前提下。才是公理。在我看来,公理就是在学习知识之前所要依靠的准则,linux下的一切都在这些准则下。 比如: 一切接文件  linux下所有都是以文件的形式保存…

    2017-07-22
  • Java中的Map List Set等集合类

    Map List Set等集合类: 一、概述 在JAVA的util包中有两个所有集合的父接口Collection和Map,它们的父子关系: +Collection 这个接口extends自 –java.lang.Iterable接口 ├+List(接口 代表有序,可重复的集合。列表) │├ ArreyList   &…

    Linux干货 2015-04-07
  • 网络班第七周 作业

    1、创建一个10G分区,并格式为ext4文件系统 (1) 要求其block大小为2048,预留空间百分比为2,卷标为MYDATA,默认挂载属性包含acl (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳 创建了一个20G的SCSI硬盘 fdisk /dev/sdb 创建ext4文件系统 ~]# mke2fs -…

    2017-09-16
  • 探究PHP底层

    1、PHP是什么? PHP 指的是我们从外面看到的一套完整的系统。这听起来有点糊涂,但其实并不复杂(PHP4 内部结构图)。从功能上来分:我们可以分为三部分: 1、 解释器部分(Zend 以引擎),负责对输入代码的分析、翻译和执行;2、 功能性部分(PHP功能函数以及扩展),负责具体实现语言的各种功能(比如它的函数等等);3、 接口部分(SAPI),负责同 …

    Linux干货 2015-04-10