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 ~]# 
相关推荐
Gofarlic_oms15 分钟前
Adams许可排队严重?不想买新许可,闲置回收立即可用
java·大数据·服务器·开发语言·人工智能
火车叼位5 分钟前
像管理 Linux 一样 SSH 到 Windows:OpenSSH Server 与 Git Bash 实战
运维·windows·ssh
我是Superman丶6 分钟前
Docker 镜像加速
运维·docker·容器
白緢7 分钟前
二、Linux 开发工具
linux·运维·服务器
爱喝水的鱼丶9 分钟前
SAP-ABAP:SAP 系统变量 SY-INDEX 学习笔记:从 1 开始的循环计数器
运维·开发语言·数据库·sap·abap
切糕师学AI13 分钟前
Systemd 服务完全指南:从入门到生产实践
linux·systemd·systemctl
计算机安禾13 分钟前
【计算机网络】第25篇:Linux网络数据包的解剖路径——从网卡驱动到协议栈的关键路径
linux·网络·计算机网络
深蓝易网16 分钟前
工厂目视化实操手册,告别形式主义
运维·网络·数据库·人工智能·汽车
小明同学0117 分钟前
linux———进程间通信
linux·服务器·网络
南境十里·墨染春水24 分钟前
linux学习进展 mysql视图详解
linux·学习·mysql