shell的exec命令

简介:

工作中遇到运维人员挂supervisor的时候建议启动使用命令control.sh start, 并且在control.sh 里面启动命令:

exec -c ./bin/xxx -f config/xxx.conf

使用man看下说明,可以看到exec是一个内部命令,

136188-20170302213655266-1204253432.png

如这里说的exec是将要exec的命令替换当前的这个命令。所以这个意思是

如果你使用了exec之后,你当前的这个shell的pid就没有了,被exec的命令所替代。

我们创建一个control.sh:

sleep 10

当我们运行 sh control.sh的时候,我们使用

watch "ps aux|grep control"

来观察control.sh的进程

发现是有的:

vagrant   7044  0.0  0.2 106068  1300 
pts/0    S+   06:41   0:00 sh control.sh

但是我们control.sh修改为:

exec sleep 10

发现我们grep不出来control进程。

这个实验能说明exec是用新的进程去代替原先的进程,原先的进程就消失了。


本文转自轩脉刃博客园博客,原文链接:http://www.cnblogs.com/yjf512/p/6492746.html,如需转载请自行联系原作者

相关文章
|
1月前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
1月前
|
Shell Linux UED
|
2月前
|
Unix Linux Shell
【Shell 编程指南 日期命令】Date命令:显示与设置系统时间和日期
【Shell 编程指南 日期命令】Date命令:显示与设置系统时间和日期
57 0
|
2月前
|
安全 Shell Linux
【Shell 命令集合 系统管理 】Linux 锁定终端 vlock命令 使用指南
【Shell 命令集合 系统管理 】Linux 锁定终端 vlock命令 使用指南
37 1
|
2月前
|
缓存 Shell Linux
【Shell 命令集合 链接器(linker)工具】Linux ld命令 将目标文件与库链接为可执行文件或库文件
【Shell 命令集合 链接器(linker)工具】Linux ld命令 将目标文件与库链接为可执行文件或库文件
46 0
|
2月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
145 45
|
2月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示目前登入系统的用户信息 w命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示目前登入系统的用户信息 w命令 使用指南
48 2
|
5天前
|
Shell 程序员 数据安全/隐私保护
shell 脚本 if-else判断 和流程控制 (基本语法|基础命令)
shell 脚本 if-else判断 和流程控制 (基本语法|基础命令)
|
17天前
|
网络协议 Unix Shell
第十一章 Shell常用命令与工具(二)
第十一章 Shell常用命令与工具(二)
|
17天前
|
移动开发 Shell Linux
第十一章 Shell常用命令与工具(一)
第十一章 Shell常用命令与工具(一)