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)
上一篇 2015-04-21 23:05
下一篇 2015-04-22 15:15

相关推荐

  • 用户和组相关配置文件

    用户和组的配置文件都在/etc目录下          /etc/passwd;        内容格式:用户名;加密后密码影子(1#);UID;GID;注释;家目录,默认shell    …

    Linux干货 2016-10-23
  • shell脚本编程和位置变量

    编程基础 程序:指令+数据    程序编程风格:       过程式:以指令为中心,数据服务于指令       对象式:以数据为中心,指令服务于数据    shell:提供了编程能…

    Linux干货 2016-08-16
  • 运维必备技能之磁盘管理

    磁盘分区的三个工具 1、fdisk交互式工具         fdisk /dev/sdb进入交互界面         交互式界面的几个常用命令        …

    Linux干货 2017-03-14
  • 第九周

    统计可登录shell与不能登陆shell的个数 2. 写一个脚本 3.写一个脚本    4、写一个脚本,完成如下功能 脚本能够接受一个参数。 (1) 如果参数1为quit,则显示退出脚本,并执行正常退出。 (2) 如果参数1为yes,则显示继续执行脚本。 (3) 否则,参数1为其它任意值,均执行非正常退出。    5、…

    Linux干货 2016-12-26
  • 推荐-LVM

    LVM LVM Linux应用 1.LVM简介 LVM:Logical Volume Manager,逻辑卷管理器。LVM利用Linux内核的device-mapper模块来实现存储系统的虚拟化(系统分区独立于底层硬件)。通过LVM,你可以实现存储空间的抽象化并在上面建立虚拟分区(virtual partitions),可以更简便地扩大和缩小分区,可以增删分…

    2016-04-11
  • Linux进程管理三剑客htop、ps、dstat

    ps命令 Unix有两种主要分支:官方的Unix(AT&T)和非官方的Unix(加利福利亚大学伯克利分校)。UNIX("带-")和BSD(不带东西)都有自己的ps版本,并且ps版本都很出名,并被广泛使用。最终结果是许多现代版本的ps都同时支持两种类型的选项,即所谓的Unix选项和BSD选项。而且还有一组选项支持GUN的选项. 所以…

    Linux干货 2016-11-22