Linux 命令简单介绍

Linux shell命令分为:

内部命令:由Shell自带,随着系统启而启动.保存在内存中.
外部命令:可执行文件

type命令可以查看命令是否是内部命令或者是外部命令.
格式: type command
    [root@iZbbkuofh7v290Z ~]# type cd
    cd is a shell builtin
    [root@iZbbkuofh7v290Z ~]# type mkdir
    mkdir is /usr/bin/mkdir
内部命令是执行从内存中读取,外部命令则是读取可执行文件.

命令的优先级:
别名 > 内部 > hash表中缓存的命令 > 外部命令

问题1:如何给命令起别名?
    答:可以利用alias命令给命令起别名
        格式:alias 别名 命令
        取消别名使用 unalias命令
        格式:unalias 别名
        查看别名
        格式:alias
        注意:这些别名只是临时的,重启系统或者重新登录都会失效
        要想永久生效,可以写入到/etc/profile文件中.(所有用户)
        echo "alias vi vim" > /etc/profile
        要想仅对自己生效,则写入~/.bash_profile文件中即可.
         echo "alias vi vim" > ~/.bash_profile
问题2:什么是hash表中的命令?
    答:linux系统中会有一张哈希表,当系统启动的时候,这张hash表是空的.
        当执行过外部命令之后,hash表会记录这条命令,相当于缓存.
        当下次再执行这个命令的时候直接从hash表中读取,而不去PATH目录文件中读取.
        大大提高命令的调用速率
        可以用hash这个命令 显示、添加或清除哈希表
        参数:
            -l  显示hash表内容
            -r 清除hash表
            -d openssl 删除表中某一条(删除openssl)
            -t openssl 查看openssl命令路径(hash表中没有的话,可以调用which命令)
            -p /usr/bin/openssl aliesopenssl 往hash表中添加一条,执行aliesopenssl即执行openssl命令(起别名)



    
    原文作者:吹倒杜甫的草房子
    原文地址: https://segmentfault.com/a/1190000019410941
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞