从事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
相关推荐
Web接口安全:提高Linux服务器保护性的关键步骤 在当今数字化的时代,Web接口的安全性变得尤为重要。无论是个人网站、企业网站还是电子商务平台,都需要采取必要的措施来防止黑客入侵和数据泄露。特别是对于运行在Linux服务器上的Web接口,我们需要采取一些关键的步骤来提高其保护性。 本文将介绍一些关键的步骤,可以帮助您提高Linux服务器上Web接口的安全性。 第一步:安装最新的操作系统和软件更
打印机是办公室最常见的办公设备之一,但在使用过程中不可避免地会遇到一些问题,如共享打印机709错误,如何解决?遇到这种情况不用担心,下面系列将为您带来详细的解决方案。 Win11共享打印机709处理方法: 1、首先同时按下键盘“Win+R”组合键打开运行。 2、接着在其中输入“appwiz.cpl”,点击“确定” 3、然后点击左上角“查看已安装的更新” 4、随后在其中卸载“
(图片来源网络,侵删) 本文目录导读: 前言 统信uos安装数据库的步骤 统信uos安装数据库的注意事项 为您分享 前言 统信uos是一款基于Linux的操作系统,广泛应用于政府、金融、教育等领域。在统信uos中安装数据库是一个常见的需求,本文将介绍如何在统信uos上安装数据库,并提供详细的步骤和注意事项。 统信uos安装数据库的步骤 1. 确认系统要求:在安装数据库之前,首先需要确认统信uos的
sed 是一个轻量级 stream 流编辑器。它可以对文件和输入流(例如管道)执行基本的文本操作。 您可以使用 sed 进行搜索,查找和替换,插入和删除字符串和行。它支持基本和扩展的正则表达式,使您可以匹配复杂的模式。 在本教程中,我们将讨论如何在 Linux 使用 sed 查找和替换字符串。我们还将向您展示如何执行递归搜索和替换。 sed 搜索并替换字符串 sed 有多个版本,它们之间在功能上有
windows7纯净版安装到新电脑的步骤方法? 当我们准备在新电脑上安装纯版本的win7操作系统时,我们的一些小朋友不知道如何安装它。所以对于这个问题,小编认为我们可以在520系统中找到一个合适的网站来下载操作系统。然后通过相关的安装工具来安装系统。 w7纯净版如何安装到新电脑 1.下载好你想要的装机系统,然后按步骤进行操作。 2.在文件夹中,找到你下载好的win7系统,鼠标右
回到顶部
|