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 ~]# 
相关推荐
智脑API6 分钟前
CCSwitch Claude Code 如何配置 MCP?服务器启动、工具权限与安全测试
运维·服务器·claude·codex·ccswitch
DolitD37 分钟前
云流技术深度剖析:单服务器下如何实现3D应用的多实例并发?
java·服务器·前端·3d·云原生·云计算
jun_bai42 分钟前
Ecplise中发布项目到配置的tomcat中
java·服务器
芦柑46444 分钟前
画布和3D导演台工具:短剧分镜从素材整理到空间预演的完整链路
服务器·前端·数据库
闲云野鹤在人间1 小时前
KVM虚拟化实战|CentOS‑Stream8 两种安装方式+模板制作+基础使用
linux·运维·服务器·centos
小张同学a.1 小时前
Docker 容器实战 2—— docker 仓库
linux·运维·服务器·docker·容器
Android系统攻城狮1 小时前
Linux PipeWire深度解析之pw_core_get_registry调用流程与实战(九十一)
linux·运维·服务器·音频进阶·pipewire音频实战进阶
其实防守也摸鱼1 小时前
智能体推荐:精选 AI Agent 工具与实战指南
运维·开发语言·人工智能·学习·web安全·自动化
小义_1 小时前
JDK 深度解析
java·linux·开发语言·python·面试
邪修king1 小时前
Re:Linux 系统编程篇 (十二):进程篇(一)基础与 fork 系统调用全解
linux·运维·服务器