内键命令和外部命令

命令的基本格式

COMMAND  [OPTIONS…]  [ARGUMENTS…] 

      命令 (COMMAND)

      OPTIONS(选项):用于启用或关闭命令的某个或某些功能

         短选项:-c  例如:-l、 -h、 -t、 -a   等

         长选项:- -word  例如:- -all、 – -help、  – -update 等

      ARGUMENTS(参数):命令的作用对象,如文件名、用户名等

     [ ]:为可选项


命令的执行过程


  输入命令回车后,系统提请特定的shell程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分配资源将其运行起来


SHELL


   在Linux系统中,Shell提供了用户与内核进行交互操作的接口,它接收用户输入的命令并把它送人内核去操作,因此,shell也被称为Linux的命令解释器

   显示系统使用的shell

        echo  $SHELL

        内键命令和外部命令

   显示当前系统使用的所有shell

       cat  /etc/shells

       内键命令和外部命令

内部命令和外部命令


   在shell中可执行的命令分为内键命令和外部命令

      内键命令:集成在系统shell类型中(如bash),通过某命令形式提供,不同的shell类型所含的内键命令不同

           help   内键命令列表

           enable   查看该系统shell类型中的所有内键命令

           enable  command   启用内部命令

           enable  -n  command   禁用内部命令

           enable  -n   查看系统禁用内部命令

           例如:

           内键命令和外部命令

     外部命令:在当前系统的某文件系统路径下有对应的可执行程序文件,表现成磁盘一个一个的独立文件,以文件路径的形式存在(如:usr/sbin/ifconfig)

           例如:

           内键命令和外部命令

    查看指定的命令是内键命令还是外部命令

          type  COMMAND

          type  -a  COMMAND  查看命令的全部类型

          type  -P  COMMAND  查看外部命令的文件路径

          例如:

          内键命令和外部命令


内键命令和外部命令的优先级

     内键命令:集成在系统shell类型中(如bash),系统开机就在内存中了,内键命令的执行直接系统调用

     外部命令:系统文件系统路径下对应的可执行程序文件,外部命令的执行依靠于系统$PATH变量下的文件路径,其中外部命令的文件路径存放在其中,    对应的外部文件却没有存放在其中,在不知道具体文件路径的情况下,系统严格按照$PATH变量下的文件路径一级一级进行寻找,找寻不到就无法执行,    除非告知具体文件路径才可执行

     echo  $PATH

     内键命令和外部命令

     当外部命令执行过一次后,外部命令相对应的文件路径就缓存到内存里了,重启之后就不在了

     内键命令和外部命令

     当把缓存到内存里的外部命令删除后,外部命令就无法执行了,所以缓存进内存里的不是外部命令的文件而是外部命令的文件路径

     综上所述,内键命令的优先于外部命令


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

(0)
huliyuqiangweihuliyuqiangwei
上一篇 2017-05-22 22:03
下一篇 2017-05-23 10:14

相关推荐

  • 开始学习总结的一些基本知识点

       第一VNC软件(面授班课堂用的),这款软件采用C/S架构(client/sever客户端和服务器端)还有VNC协议(virtual Network computing虚拟网络计算)协议。虽说这款软件对网络班没有实际用途,但自己了解下这款软件的构成也是不错的。    第二开始学习需要的虚拟机软件其中包括VMWARE…

    Linux干货 2016-10-29
  • N22-妙手-第五周博客作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@localhost grub]# grep "^[[:space:]]\+" /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,…

    Linux干货 2016-09-19
  • LINUX的初探

    一般而言,计算机的组成遵循着“冯诺依曼体系结构”。这种结构的体现实质上是一种存储程序的原理,把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式来存储。这种结构的要点是:计算机的数制采用二进制;计算机应该按照程序顺序执行。

    2018-03-04
  • 文件系统

            文件系统表现为单个统一的层次结构:从目录/开始并通过若干数量的子目录继续向下扩展,/也叫做根目录。这种单一的层次系统和 Windows 的不一样,后者的分区有专门的名字空间。        &n…

    Linux干货 2016-02-28
  • 推荐-Nginx Rewrite的应用-根据访问平台做简单跳转

    Nginx Rewrite的应用-根据访问平台做简单跳转 Nginx Rewrite的应用-根据访问平台做简单跳转 Rewrite模块简介 Rewrite的配置 使用不同平台进行测试 配置参数详解 Rewrite模块简介    Rewrite最主要的作用就是对URL进行重写,即重定向。举个简单的例子,我们用电脑打开淘宝显示出的页面与手机打开显示出的页面,或者…

    Linux干货 2016-03-27
  • Linux命令格式、获取帮助、文件系统

    一、Linux的命令     (一)、概念和意义:             发起一个命令:请求内核将某个二进制程序运行为一个进程;      &nbs…

    Linux干货 2016-08-15