1 shell 中的exec用法
在shell脚本中使用exec命令,根据操作的对象不同会有不同的行为
1 操纵文件描述符
这里面又要说说描述符 shell中有12个描述符
其中 0 代表标准输入
1 代表标准输出
2 错误
其他 3-9 都是空白描述符
最常用的是shell中出现
exec 3>&1 4>&2 1>> zhis_bash.log 2>&1
讯享网
其含义是 复制标准输出到3 错误输出到 4 把 3 4 保存在zhis_bash.log 这个文件中
等同于 再写一个shell 类似
讯享网 cat another shell ./zhis_bash.sh >>zhis_bash.log 2>&1
2 其他命令
如果exec 跟的是其他命令,则其他命令结束后,本shell也随之停止。
[root@localhost ~]# cat test_exec.sh #!/bin/bashecho “hello mysql” exec echo “ hello oracle” echo “hello db2”
运行一下
讯享网[root@localhost ~]# ./test_exec.sh hello mysql hello oracle
可以看到随着 echo “ hello oracle” 这条指令运行完本 整个脚本执行完毕。
后面的 echo “ hello db2” 没有执行

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/26478.html