美文网首页
linux(内部、外部、别名、缓存)命令及其优先级

linux(内部、外部、别名、缓存)命令及其优先级

作者: jie0112 | 来源:发表于2017-05-21 17:38 被阅读0次

内部命令: 指的是集成于Shell解释器程序(如Bash)内部的一些特殊指令,也成为内建(Built-IN)指令。内部命令 属于Shell的一部分,所以并没有单独对应的系统文件,只要Shell解释器被运行,内部指令也就自动载入内存了,用户可以直接使用。内部命令无需从硬盘中重新读取文件,因此执行效率更高。例:echo 、pwd、cd、help 、hash等。

  • 查看内部命令:如用help命令


外部命令:指的是Linux系统中能够完成特定功能的脚本文件或二进制程序,每个外部命令对应了系统中的一个文件,是属于Shell解释器程序之外的命令,所以称为外部命令。Linux系统必须知道外部命令对应的文件位置,才能够由Shell加载并执行。外部命令是在bash之外额外安装的,通常放在/bin:/usr/bin:/sbin:/usr/sbin……等等。例:ls 、 bc、 chvt 、init等。

  • 查看外部命令的路径:echo $PATH


别名命令:Linux系统提供了一个有用的工具叫alias,可以让我们将一些需要频繁使用的但又过于冗长的命令设置一个别名,这样一来,以后只需输入一个简短的别名就可以达到同样的作用。

  • 查看别名命令:alias


  • 别名的命名 例: alias cdnet='cd /etc/sysconfig/network-scripts/'
    取消别名:unalias cdnet

缓存命令:缓存命令分为内部缓存命令与外部缓存命令。内部缓存命令即为系统每次执行玩一次外部命令都会将其加载到内存中缓存,以便下次调取命令的时候省去去硬盘寻找命令的时间,直接从内存中读取命令执行。外部缓存命令即为每次注销、关机或者重启的时候,系统都会将缓存在内存中的外部命令与执行过的内部命令写入到硬盘的.bash_history文件中,这跟日志文件差不多,记录下来系统的命令使用历史,以便在系统非正常情况下排错。

  • 显示缓存过的命令:hash


如何判定一个命令是否为内部命令or外部命令?

type:确定命令是否为内部命令或外部命令


它们的优先级

判定优先级需先了解命令:

help:查看内部命令

enable:启、禁用内部命令

hash:缓存执行过的命令

1.以echo为例:它是内部命令又是外部命令



2.

从上面可以看出内部命令优先于外部命令执行

从上面可以看出别名优先于内部命令

最后得出:别名命令>内部命令>缓存命令>外部命令!!

相关文章

  • linux(内部、外部、别名、缓存)命令及其优先级

    内部命令: 指的是集成于Shell解释器程序(如Bash)内部的一些特殊指令,也成为内建(Built-IN)指令。...

  • Linux 入门与帮助

    一、命令别名 1. 命令别名、内部命令、外部命令 (1) 优先级 命令别名 > 内部命令 > 外部命令 二、日期和...

  • Linux命令笔记一:Linux命令(一)

    一、Linux目录树 二、Linux命令 Linux分为内部命令和外部命令 内部命令用help去查看,外部命令可以...

  • linux 命令帮助的获取

    一 Linux的外部命令与内部命令 外部命令 内部命令 内外部命令的区分 $ type cdcd is a she...

  • 20170714 linux入门(一)

    内容简要 1.Shell简介2.内部命令与外部命令3.hash缓存表4.别名alias 1.Shell简介 She...

  • Linux如何获取帮助

    查看是内部命令还是外部命令? type COMMAND 在Linux系统中,内部命令和外部命令查看帮助文档时是有...

  • Linux相关使用介绍

    一、Linux内外部命令的判断方式以及命令的执行流程 1、Linux命令 Linux命令分为内部命令(shell自...

  • linux 内部命令和外部命令

    前言 Linux中的命令大致分为两类:内部命令和外部命令内部命令也称shell内嵌命令,外部命令存放在一个文件中,...

  • linux下的帮助命令

    一、获得命令帮助 1.1、内部命令与外部命令 简单来说,在linux系统中有存储位置的命令为外部命令; 没有存储位...

  • shell 命令

    Linux shell执行命令有三种: 内建命令, shell函数和外部命令 内部命令: shell程序本身包含的...

网友评论

      本文标题:linux(内部、外部、别名、缓存)命令及其优先级

      本文链接:https://www.haomeiwen.com/subject/clhvxxtx.html