linux内建命令/内部命令之exec

1.exec介绍

exec是linux shell内建命令,该命令将使用一个特定的命令来取代当前进程。一般当shell遇到一个命令,它会forks off一个子进程来真正的运行命令,但使用exec内建命令,shell就不会fork一个子进程了,并且命令的执行将会替换掉当前shell。因此在脚本中使用时,一旦exec所执行的命令执行完毕,那么它就会强制退出脚本。

2.样例

复制代码
[root@elasticsearch ~]# cat exec.sh 
#!/bin/bash

exec echo "Exiting \"$0\"."
#脚本会在这里退出

echo "This echo will never echo."
exit 99
#脚本不会在这里退出。脚本退出后,使用echo $?来检查一下退出码,一定不是99
[root@elasticsearch ~]# sh exec.sh 
Exiting "exec.sh".
[root@elasticsearch ~]# echo $?
0
[root@elasticsearch ~]# 
相关推荐
Yogurt_cry5 小时前
[树莓派4B] 闲置近10年的爱普生 L310 打印机爆改无线打印机
linux·物联网·树莓派
爱吃橘子橙子柚子1 天前
3CPU性能排查总结(超详细)【Linux性能优化】
运维·cpu
Johny_Zhao1 天前
OpenClaw中级到高级教程
linux·人工智能·信息安全·kubernetes·云计算·yum源·系统运维·openclaw
Sheffield2 天前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
Sheffield2 天前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
舒一笑3 天前
程序员效率神器:一文掌握 tmux(服务器开发必备工具)
运维·后端·程序员
Johny_Zhao3 天前
centos7安装部署openclaw
linux·人工智能·信息安全·云计算·yum源·系统运维·openclaw
haibindev3 天前
在 Windows+WSL2 上部署 OpenClaw AI员工的实践与踩坑
linux·wsl2·openclaw
NineData3 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库