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 ~]# 
相关推荐
常乐か31 分钟前
在 Ubuntu 24.04 中编译 Qt 5.15.2 项目完全指南
linux·qt·ubuntu
垂直昵称1 小时前
多线程实现网页接口并发压力测试
linux·服务器·windows
元岳数字人小元2 小时前
数字人开源技术优势解析,助力智能交互普及落地
运维·人工智能·开源·人机交互·交互
JXJD20042 小时前
AI 推理服务器高速连接器线束自动化设备定制指南 全场景互连非标整线方案参考
服务器·人工智能·自动化
jufeng13072 小时前
【系列:MiniKV 原理剖析 · 第 2 篇】
linux·c++·软件工程
王琦03182 小时前
Linux的管理程序
linux·运维·服务器
名字还没想好☜3 小时前
Kubernetes NetworkPolicy 实战:默认全通的坑与用标签做零信任隔离
运维·云原生·容器·kubernetes·networkpolicy
QWEDDRFTG3 小时前
家用服务器供电
服务器
Crazy________3 小时前
Redis02:库切换、监控与安全配置
linux·redis·云原生·mybatis
Eloudy3 小时前
给 Linux 加新硬盘的挂载命令
linux·运维·服务器