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

相关推荐

  • N28第五周

    1、简述rpm与yum命令的常见选项,并举例
    2、自建yum仓库,分别为网络源和本地源
    3、简述at和crontab命令,制定 每周三凌晨三、五点10分执行某个脚本,输出当前时间,时间格式为 2017-12-28 10:00:00
    4、简述sed常用操作命令,并举例

    Linux干货 2018-01-03
  • shell精讲

    shell精讲 shell变量        定义变量时,变量名不加美元符号($,PHP语言中变量需要) 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则: 首个字符必须为字母(a-z,A-Z)。 中间不能有空格,可以使用下划线(_)。 不能使…

    Linux干货 2016-08-21
  • 排名三剑客的VIM _正确的打开姿势!

    vim程序编辑器        vi:是老式的文字处理器。     vi的使用:【vi分为3种模式一般模式、编辑模式、命令模式】         一般模式:   vi打开文件就直接进入到了一…

    Linux干货 2017-04-10
  • php的serialize序列化和json性能测试

    最近需要对大数组做存储,需要在serialize序列化和json之间做了选择。因此需要做了性能测试。 在php5.2之前对数组存储的时候,大都使用serialize系列化。php5.2之后,开始内置了 JSON 的支持。 在网上看到有些资料说:json_encode和json_decode比内置的serialize和unserialize…

    Linux干货 2015-04-07
  • N25-第18周博客作业

    1、为LNMP架构添加memcached支持,并完成对缓存效果的测试报告; LNMP的安装过程不再赘述. # yum install -y memcached # cat /etc/sysconfig/memcached  PORT=”11211″   &nb…

    2017-05-21
  • linux软链接与硬链接的区别

    硬链接:相于当给文件增加了一个新名 在添加链接时会增加链接数,其inode结点数不会增加 支持绝对路径与相对路径 硬链接不能对目录来创建 不能跨分区来创建链接 硬链接链接到文件被删除时,依旧可以通过链接文件来访问被删文件的数据 软链接:可以支持对目录来创建链接 (注,当你用rm -rf 删除目录的时候,目录不会删除,但目录中的内容会被删除,并且会删除源文件)…

    Linux干货 2013-07-15