Shell脚本小记
2016-02-01 20:05
387 查看
一、Shell脚本中执行另外一个Shell脚本,会创建当前进程的子进程
首先需要明确的是,./a.sh和
/bin/bash ./a.sh这两种都是执行Shell脚本的方式,在
/a.sh方式中,根据脚本中
#!语句能够得到如
/bin/bash ./a.sh形式的最终执行命令。
现在,有“hello.sh”脚本,内容如下:
#!/bin/bash echo "hello" nohup ./world.sh echo "hello world"
有“world.sh”脚本,内容如下:
#!/bin/bash var=1 while [ "$var" -le 10000 ] do echo "world" var=$(($var+1)) sleep 1 done
执行
/bin/bash hello.sh命令,可得到如图1所示进程情况。
图1
从图可知,在执行“hello.sh”脚本时执行“world.sh”脚本的确会创建当前进程的子进程。另外从图中可知,执行
sleep命令也会创建子进程。
二、Shell脚本中可导入另外一个文件中的脚本片段
在Shell脚本中可通过“. file”方式导入“file”文件中的脚本片段到本脚本作为本脚本的内容,这不是“Shell脚本中执行另外一个Shell脚本”,因而不会引发创建当前进程的子进程。修改上面的“hello.sh”脚本,修改后内容如下:
#!/bin/bash echo "hello" . world.sh echo "hello world"
执行
/bin/bash hello.sh命令,可以发现如图2所示的进程情况,证明了上述结论。
图2
相关文章推荐
- dirname命令介绍-使用dirname在shell脚本中获取当前脚本文件所在的绝对路径
- shell编程-告警系统
- xshell下bpython使用退格键的问题
- 如何在交互式shell脚本中创建对话框
- Linux Shell脚本教程:30分钟玩转Shell脚本编程(笔记)
- Ubuntu下解决bash 没有那个文件或目录的方法
- Ubuntu下解决bash 没有那个文件或目录的方法
- shell中if多重条件
- Shell编程中while与for的区别及用法详解
- shell 判读
- Shell In A Box:一款访问远程Linux服务器的SSH终端
- 使用adb shell查看文件
- bash脚本编程之二 条件判断
- 利用jspx解决jsp后缀被限制拿shell
- liunx之type命令 测试环境(cetos7)
- Hadoop—FS Shell
- eclipse插件之easyshell
- Shell编程中while与for的区别及用法详解
- Xshell实现Windows上传文件到Linux主机
- linux shell 编程13 获取时间