从事Linux主机建设和运维的同事们在工作中应该经常会遇到批量修改配置信息或部署应用环境的需求,需要根据需求依次登录目标主机执行一些命令或脚本,使用shell脚本的循环语句是实现这一需求最直观方式。但是普通的for或do while循环都是串行执行的,脚本耗时每个循环耗时*循环次数,在较大规模实施或者目标语句耗时较长的情况下,串行方式的循环脚本执行时间也不容忽视。
要减少执行串行循环的耗时,自然要考虑如何用并行方式解决。在shell之外有一些现成的管理部署工具如parallel、ansible、puppet、saltstack都能解决并发执行多任务的问题,但生产系统一般不允许随意安装新软件,因而我们这里只讨论不借助工具,只使用shell脚本如何实现并发执行多任务。
串行执行循环时,脚本中每一次循环对应的子进程都是脚本执行所处shell的前台进程,同一时间一个shell只能有一个前台进程,要做到并行执行多个进程,意味着脚本中的循环要放到执行环境shell的后台,作为后台进程去执行。
根据这个思路来看一下例1:
1例1 直接使用后台执行
先来看下循环串行执行的情况。
脚本的循环内容以sleep为例,下同。
vi para-0.sh
| #!/bin/bash
Njob=15 #任务总数
for ((i=0; i
相关推荐
有些用户的win10电脑中由于存放有一些重要的文件,因此为了防止他人随时打开电脑进行操作,我们可以给win10系统进行开机密码登录的设置,然而大多用户都不懂得开机密码设置方式,对此win10开机密码设置在哪里呢?接下来小编就来告诉大家win10开机密码设置方法。 具体方法: 1、进入windows10系统主界面后点击左下角的开始菜单,选择进入设置选项。 2、进入设置菜单后点击
在Win10系统实际上有很多功能没有显示出来,而且功能大部分需要修改注册表才可以使用的,例如在精美菜单添加关闭的选项,那么今天就给大家带来不能添加关闭显示器选项的方法。 Win10 精美添加关闭显示器选项的方法介绍 操作步骤:(文末有键导入) 1、打开注册表编辑器(Win+R-输入“regedit”-回车)定位到: HKEY_CLASSES_ROOTDesktopBackgroundShell 2
近年来,云计算已成为企业中的重要一环。然而,云安全仍然是一个亟待解决的问题。为了保证云计算的安全性和信任度,可信计算技术成为了一个热门的话题。本文将探讨如何使用可信计算技术构建可信云计算系统。 可信计算技术概述 可信计算技术是一种保障计算机系统安全性和可信度的技术,主要有三个主要组成部分,即可信平台模块(TPM)、secure boot以及UEFI BIOS。这些组件可以提高操作系统和应用程序的安
在使用win7系统时,如果修改BIOS开启AHCI模式,可能会导致系统出现蓝屏问题。其实这是由于BIOS设置里面的SATA硬盘模式没有修改而导致。那么应该如何解决呢?下面就让小编为大家带来win7系统如何解决开启AHCI蓝屏。 1.使用组合快捷键win键+r键打开运行窗口,输入“regedit”回车确认。 2.打开注册表编辑器,依次打开注册表,找到HKEY_LOCAL_MACHINESystem
[20231207]ls -f的显示问题.txt --//在执行ls -f时遇到一些问题,不理解做一个记录。 $ cd /u01/testrm $ touch 1.aud 2.aud 3.aud $ ls -f . .. 1.aud 2.aud 3.aud --//注意显示横着显示文件名。 $ ls -f|head . .. 1.aud 2.aud 3.aud --//为什么加入管道|后h
回到顶部
|