shell 命令是如何被执行的?

1. 命令行的处理顺序:

1) 执行历史命令替代 (视情况而定)

2) 命令行被分解为 token

3) 更新历史命令 (视情况而定)

4) 引用的处理

5) 别名替代和函数的定义 (视情况而定)

6) 设置重定向,后台进程和管道

7) 执行变量替换

8) 执行命令替换

9) 执行称为 globbing 的文件名替换

10) 执行命令


命令被执行时,可以是别名、函数、内置命令或磁盘上的一个可执行程序。别名一般为原命令的缩写,函数是一组命令,别名和函数都在shell 内存空间中定义。内置命令是shell 内部程序,而可执行程序则在磁盘上。

shell 用路径变量在磁盘上定位可执行的程序,执行命令前创建一个sehll 子进程,过程如下图:


以上参考《UNIX Shell 范例精解》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值