346 字
2 分钟
Bash Shell 实现程序并行
Bash Shell 实现程序并行
(2023.03.21)
1. Bash 简介_w3cschool
Bash shell 可以在文本中直接运行Liunx 命令。Bash 是 Bourne Shell 程序“sh”的升级版本,这是一个开源 GNU 项目。它提供了比 Bourne Shell 更好的功能,适用于编程和交互使用。 我们可以这么理解,Bash 是一个命令处理器,通常运行于文本窗口中,可以将用户输入的命令解释并执行相应的操作,这样式的文件被称作脚本。 Bash 是绝大多数 Linux 、MAC 及 OS 默认的 shell 程序,并且 Shell Script 都大致相同。当您学会一种 Shell 后,其它的 Shell 都能够很快上手,而且一种 Shell Script 通常可以在很多 Shell 上使用,因此您不必在学习哪种 Shell 的选择上耗费太多的时间。
2. Bash 示例
#!/bin/bash# Part 1 注释# 单行注释
<< BLOCK1.2.多行注释(1)3.BLOCK
:'1.2.多行注释(2)3.'3. 并行Bash
shell中的命令都是串行执行的,如果想要充分利用服务器的资源,需要一些小技巧
# do the Jobsii=$(((nshots+1)/$Worker))jj=$(((nshots+1)%$Worker))for((i=0;i<$ii;i++))do for((j=0;j<$Worker;j++)) do { job=$((i*$Worker+j)) bash ./jobs/lgl_$job.sh } & # 并行$Worker个程序 done wait # 等待完成 多个done