[笔记]内置命令与外部命令

内置命令(bulidin command):Bash程序本身提供,不需要到$PATH中查找,执行效率高
外部命令:独立存在与文件系统中的可执行文件,文件需要存在于$PATH中
        判断方法:type COMMAND


注意:Linux中严格区分大小写!!!

常见的内置命令:
    help: 显示所有内置命令列表或单个内置命令的用法
    type:判断命令的类型是内置还是外部命令
    echo:显示,默认自动换行(加 -n 选项取消换行)
    printf:依照格式显示参数内容,与C中printf用法类似
    cd:change directory
        cd (cd ~): 回到用户的家目录
        cd - : 回到上次cd之前的目录
        cd .. : 切换到当前目录的上层目录
    pwd: print working directory显示当前所处目录
    :(冒号):什么也不做,传回真值(0)
    .(半角句号):在当前Shell环境中执行shell script文件[注意 . 与script间要有空格]
    source: 同上半角句点
    alias: 显示或设置别名
    unalias: 取消别名
    exit: 离开shell或结束Script
    logout:注销login shell
    umask: 显示或设定文件及目录创建时权限的屏蔽值(去除值)
    history: 显示曾经执行过的shell命令
    HISTFILE:当前用户曾经执行过的shell命令的存储文件
    fc: 登录主机后执行过的命令
    set:显示所有shell变量和函数的内容(无参数选项)或设定Bash Shell属性
    time:在script或COMMAND执行结束后显示real,user,cpu的耗费时间
    read:由标注输入(通常为键盘)或输入重定向读取数据
    exec:执行指定的程序来取代原来的shell或使专项操作生效
    
常见外部命令:
    ls: list列出目录内容(常用)
    rm: remove删除
    mkdir: make directory创建目录
    rmdir: 删除空目录
    which:在搜索路径($PATH)中查找外部命令文件位置
    locate: 在文件名数据库中查找包含所给关键词的文件位置
    date:显示或设定系统的时间日期
    who:显示当前登录到主机的所有用户
    w: 功能同who,输出格式不同
    whoami:显示自己的登录账号
    cat,tac,more,less:显示文件内容
    head,tail:显示文件的头,尾一定行数(默认10行)
    wc: 统计文件内包含的总子数或行数信息
    ln: 创建链接文件(软连接或硬链接)
    find:实时从硬盘查找文件
    basename: 取得路径中最后的文件名部分(如/a/b/c中的c)
    dirname: 取得路径中的目录部分(如/a/b/c中的/a/b)
    sort: 排序
    uniq:不显示重复行(即相同的N行只显示1行)
    grep: 取出符合设定条件的行
    cut: 取出文件中每行符合设定条件的部分
    paste: 以行与行的方式合并文件
    tr:translate
    tee:读取标准输入,然后将标准输出显示的同时存储到文件中去
    diff: different比较文件的不同

多命令的执行:
    COMMAND1; COMMAND2; COMMAND3 :均会执行,且不会互相影响(不保证所有命令都成功)
    COMMAND1 && COMMAND2 && COMMAND3 :前一个命令执行成功后才去执行下一个命令
    COMMAND1 || COMMAND2 || COMMAND3 :前一个命令执行不成功才去执行下一个命令
    (COMMAND1; COMMAND2; COMMAND3;) :开启一个子shell执行括号中的命令,完成后退出子shell
    { COMMAND1; COMMAND2; COMMAND3; } :在当前Shell环境中执行花括号中的命令(括号与命令间                  要有空格,且最后一个命令后必须接 ; 号 )

^_^

时间: 2024-10-21 10:19:54

[笔记]内置命令与外部命令的相关文章

Linux内置命令和外部命令

1.Linux的命令可以分为内部命令和外部命令: 内置命令在系统启动时就调入内存,是常驻内存的,所以执行效率高. 而外部命令是系统的软件功能,用户需要时才从硬盘中读入内存. 2.type -  Display information about command type   #查看当前系统的命令是否为内置命令和外部命令. 3.BASH_BUILTINS  alias, bg, bind, break, builtin, caller, cd, command, compgen, complete

shell 的内置命令与外部命令的区别

shell命令通常分为两类: 内置命令(man builtins) 外部命令 下面分析两者的区别. 内置命令: 内部命令被构建在shell之中.当执行shell命令时,内部命令的执行速度非常快.这是因为没有其他的进程因为执行这条命令而被创建.比如说,当我们执行"cd"命令时,没有进程被创建.在执行过程中只是简单的改变当前的目录. 外部命令: 外部命令并没有被构建在shell中.这些可执行的外部命令保存在一个独立的文件当中.当一个外部命令被执行时,一个新的进程即被创建同时命令被执行. 通

<linux下内置命令和外部命令>

Linux下内置命令和外部命令 1.linux的命令可以分为内部命令和外部命令: 内部命令在系统启动时就调入内存,是常驻内存的,所以执行效率高. 而外部命令是系统的软件功能,用户需要时才从硬盘中读入内存. enable既可以查看内部命令,同时也可以判断是否为内部命令. [[email protected] ~]# enable ls  //判断ls是否为内置命令-bash: enable: ls: not a shell builtin //它不是内部命令[[email protected] ~

shell的内建命令和外部命令

shell的内建命令和外部命令 Shell执行的命令可以分为内建命令(built-in)和外部命令(external),前者是构建在shell内部:后者是一个独立的文件(可以是二进制文件,也可以是一个脚本). 内建命令的执行比较简单,由当前shell本身来执行,例如echo, eval, exec, export, readonly, read, shift, wait和点(.)等: 外部命令的执行比较复杂,shell进程会fork一个子进程,父进程随后挂起,然后在子进程中exec加载外部文件,

区分Linux内建命令和外部命令

linux命令有内部命令和外部命令之分,内部命令和外部命令功能基本相同,但是有细微差别 内部命令:shell程序的一部分 通常在Linux系统加载运行时shell就被加载并常驻内存中,内部命令是写在bashy源码里面,执行速度比外部命令快 因为解析内部命令shell不需要创建子进程 如:exit  cd  echo  history 外部命令:Linux系统中实用程序部分 因为实用程序功能通常比较强大,包含的程序量也会很大,在系统加载时不随系统一起被加载在内存中,而是需要时才会将其调入内存 通常

shell的内部命令和外部命令

shell命令分成内置命令和外部命令. 内置命令(builtin command) 是shell解释程序内建的,有shell直接执行,不需要派生新的进程.有一些内部命令可以用来改变当前的shell环境. 常见的内部命令有:.(点命令).bg.cd.continue.echo.exec.exit.export.fg.jobs.pwd.read.return.set.shift.test.times.trap.umask.unset和wait. 外部命令(external command) 又分两种

Linux查看命令是内部命令还是外部命令

在 Linux 中,怎样查看一个命令是内部命令还是外部命令呢?下面就来为大家介绍. 一.区别: 1.内部命令在系统启动时就调入内存,是常驻内存的,所以执行效率高. 2.外部命令是系统的软件功能,用户需要时才从硬盘中读入内存. 二.如何判断. 在终端中输入 type 可以查看命令是内部命令还是外部命令.格式为: type  要查看的命令 例如,我们要查看 cd 命令是否为内部命令,可以键入 type cd.从返回的结果可以看出, cd 是一个内部命令. $type cd cd is a shell

linux中的内部命令和外部命令

linux中的命令大致可分为两类,内部命令和外部命令 内部命令:也称shell内嵌命令: 外部命令:存放在一个文件中,使用时需要去文件中查找,这些文件被定义在$PATH [[email protected] ~]# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin type命令可以查看命令类型,以区别是内部命令还是外部命令 例 [[email protected] ~]# type cd cd is a

shell内部命令和外部命令

区别: 内部命令:内部命令被构建在shell之中.当执行shell命令时,内部命令的执行速度非常快.这是因为没有其他的进程因为执行这条命令而被创建.比如说,当我们执行"cd"命令时,没有进程被创建.在执行过程中只是简单的改变当前的目录. 外部命令:外部命令并没有被构建在shell中.这些可执行的外部命令保存在一个独立的文件当中.当一个外部命令被执行时,一个新的进程即被创建同时命令被执行.比如说,当我们执行"ls"(通常被保存在/bin 目录下)命令时,然后/usr/

Linux中 别名、内部命令、外部命令、hash缓存表 系统调用时的优先级比较

Linux系统中别名.内部命令.外部命令.hash缓存表 优先级优先级比较 在我们平时使用Linux系统执行各种命令时,会发现命令在执行过程中会区分哪个优先执行,哪个其次执行,这里我们来做个试验证明一下. 别名:用alias命令来设置命令的别名. 内部命令:内部命令在系统启动时就调入内存,是常驻内存的. 外部命令:外部命令是系统的软件功能表现为一个文件,用户需要时才从硬盘中读入内存. hash缓存表:linux系统下会有一个hash缓存表,当你刚开机时这个hash表为空,每当你执行过一条命令时,