美文网首页
shell 命令

shell 命令

作者: peerben | 来源:发表于2020-11-21 19:07 被阅读0次

    Linux shell执行命令有三种: 内建命令, shell函数和外部命令

    内部命令: shell程序本身包含的命令, 命令集成在shell解释器中, 执行内建命令, 没有进程的创建和消亡

    外部命令: 独立于shell的可执行程序, find, grep ... 命令行在shell执行外部命令时, 会创建一个当前shell的复制进程来执行

    外部进程执行过程:

    1. 调用POSIX的fork函数, 创建命令行shell进程的子进程
    2. 在子进程环境查找程序路径
    3. 以新进程取代原进程
    4. 子进程执行完成, 从终端读取下一条命令

    source命令在原进程环境执行, 而执行./script.sh 脚本, 是以新进程启动, 对父进程环境无影响

    父进程 ========== 等待子shell返回 ============ 父shell
    | |
    | |
    创建子进程 -----------> 子shell --------> 执行程序 -------------> 子进程返回

    相关文章

      网友评论

          本文标题:shell 命令

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