`

Shell多线程执行脚本示例

阅读更多
Shell脚本是顺序执行的,但是系统允许多个Shell脚本同时执行,为了达到资源的综合利用,也就是把服务器往死里用,有时候需要一段脚本对多个脚本进行多线程的调度,并且等待完成之后继续执行后续的脚本。
 
主脚本:
# !/bin/bash
#用于识别子线程的完成数量
rm test.count
touch test.count
#开始启动子线程
./script.sh 10 &
./script.sh 20 &
./script.sh 30 &
./script.sh 40 &
./script.sh 50 &
./script.sh 60 &
./script.sh 70 &
./script.sh 80 &
#监控子线程的完成数量
v_count=`wc -l test.count | awk -F ' ' '{print $1}'`
while [[ ${v_count} -lt 8 ]];do
    echo $i;
echo "子脚本还没有完全执行完毕,已完成:${v_count}"
v_count=`wc -l test.count | awk -F ' ' '{print $1}'`
sleep 1
done;
echo "子脚本完全执行完毕,已完成:${v_count}"
 
 
子脚本:
# !/bin/bash
 
id=${1}
 
for((i = 0 ;i < ${id} ;i ++ )); do
{
    echo " ${id} Children ${i}."
sleep 1;
}
done
echo "finish">>test.count
 
通过上面的方法,即可把服务器往死里用了,这个在多维度统计报表数据的时候特别有用,3个维度的报表需要8个统计语句,这样子就可以等于一次执行完成了。
分享到:
评论

相关推荐

    Python实现多线程下载脚本的示例代码

    一个简单的多线程下载资源的Python脚本,主要实现部分包含两个类: Download类:包含download()和get_complete_rate()两种方法。 download()方法种首先用 urlopen() 方法打开远程资源并通过 Content-Length获取资源...

    shell批量curl接口脚本的简单实现方法

    主要跟大家介绍了关于shell批量curl接口脚本的简单实现方法,文中通过示例代码介绍的非常详细,对大家学习或者使用shell具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

    TDengine数据迁移Python脚本

    &gt; 支持多线程和多进程 &gt; 如果子表不存在会自动创建子表,如果超级表不存在会直接报错。 &gt; 使用datac_init.py 会同步创建所有超级表和子表,但不会创建数据库。 ## 参数说明 -c filename 指定配置文件,默认datac....

    autojs4.1.1-apk-包含插件-代码示例

    autojs脚本示例打包(涵盖http网络请求、javascript、shell命令、安卓点按和手势、本地存储、传感器、定时器、对话框、多线程、画布、脚本引擎、界面控件、控制台、设备与设备信息、事件按键与触摸监听、调用java api...

    buku一个强大的书签管理器和个人文本迷你网络

    存储带有自动获取的标题、标签和描述的书签 从 Firefox、Google Chrome、Chromium 和 MS Edge 自动导入 在浏览器中打开书签和搜索结果 ...Shell 完成脚本,包含示例的手册页 隐私意识(不收集未经确认的用户数据)

    Python多进程池 multiprocessing Pool用法示例

    本文实例讲述了Python多进程池 multiprocessing Pool用法。分享给大家供大家参考,具体如下: 1. 背景 由于需要写python程序, 定时、大量发送htttp请求,并对结果进行处理。... python脚本有多线程和多进程。由于pytho

    Win-Brash:Windows 原生 Bourne Shell 解释器-开源

    Win-Brash 是从头开始将 Bourne shell 重新编码为原生 Microsoft Windows 多线程命令行应用程序。 它使用 Bourne shell 语法,但可以识别 Windows 文件名。 TAB 键有助于将 Unix 样式的路径名转换为完全有效的 ...

    Android代码-Android

    Builder 给出了使用ant编译Android工程的通用shell脚本,相关博文:Android开发实践:用脚本编译Android工程 GroupList 封装并演示了如何使用Android的ExpandableListView控件,相关博文:Android开发实践:多级...

    《Python UNIX 和Linux 系统管理指南》[PDF]

    ·使用多线程和fork选项。 ·使用网络设备从一个进程获取另一个进程的信息。 ·创建可点击的、易于交互的gui工具。 ·通过交互式snmp编程实现监控大型主机集群。 ·掌握ipython shell,作为bash、korn或z-shell的...

    Python.Unix和Linux系统管理指南 pdf

    ·使用多线程和fork选项。 ·使用网络设备从一个进程获取另一个进程的信息。 ·创建可点击的、易于交互的gui工具。 ·通过交互式snmp编程实现监控大型主机集群。 ·掌握ipython shell,作为bash、korn或z-shell的...

    Python.Unix和Linux系统管理指南

    使用多线程和fork选项。 使用网络设备从一个进程获取另一个进程的信息。 创建可点击的、易于交互的GUl工具。 通过交互式SNMP编程实现监控大型主机集群。 掌握IPython shell,作为Bash、Korn或Z—Shell的替换或补充。...

    PYTHON UNIX和LINUX系统管理指南

    , 使用多线程和fork选项。, 使用网络设备从一个进程获取另一个进程的信息。, 创建可点击的、易于交互的GUl工具。, 通过交互式SNMP编程实现监控大型主机集群。, 掌握IPython shell,作为Bash、Korn或Z—Shell的替换或...

    1345个易语言模块

    ZCL_多线程类1.01.ec ZCL_控件类库1.01.ec ZCL_文件读写 1.01.ec ZCL_核库函数1.01.ec zip.ec Z计算器.ec [神2也教你学E] - 可执行动态载入&输出其他文件模块.ec _仿真shell库.ec √功能键状态√.ec √取功能键状态...

    用Python写网络爬虫PDF-理查德 劳森(Richard Lawson)

    4.3 多线程爬虫 60 4.3.1 线程和进程如何工作 61 4.3.2 实现 61 4.3.3 多进程爬虫 63 4.4 性能 67 4.5 本章小结 68 第5章 动态内容 69 5.1 动态网页示例 69 5.2 对动态网页进行逆向工程 72 5.3 渲染动态...

    用Python写网络爬虫.pdf

    4.3 多线程爬虫 60 4.3.1 线程和进程如何工作 61 4.3.2 实现 61 4.3.3 多进程爬虫 63 4.4 性能 67 4.5 本章小结 68 第5章 动态内容 69 5.1 动态网页示例 69 5.2 对动态网页进行逆向...

    精通Windows.API-函数、接口、编程实例.pdf

    执行demo中的示例方式 在编译环境下进入demo目录,执行nmake命令在bin目录下生成可执行文件 注:demo无注释,对应书本中部分示例。 目录 第1章 Windows应用程序开发入门 1 1.1 第一个实例程序 1 1.1.1 start....

    vc++ 应用源码包_1

    实现了自绘控件,云端控制主要在CnComm类多线程串口通讯库, camerads-DirectShow使用示例 演示了摄像头的使用 CatListBoxDemo ListBox控件与其它控件阙套使用方法 CCAMS系统是一种用于局域网下的CS模式的软件...

    vc++ 应用源码包_2

    实现了自绘控件,云端控制主要在CnComm类多线程串口通讯库, camerads-DirectShow使用示例 演示了摄像头的使用 CatListBoxDemo ListBox控件与其它控件阙套使用方法 CCAMS系统是一种用于局域网下的CS模式的软件...

    vc++ 应用源码包_6

    实现了自绘控件,云端控制主要在CnComm类多线程串口通讯库, camerads-DirectShow使用示例 演示了摄像头的使用 CatListBoxDemo ListBox控件与其它控件阙套使用方法 CCAMS系统是一种用于局域网下的CS模式的软件...

Global site tag (gtag.js) - Google Analytics