linux - 并行运行命令,如果任何命令使用等待失败,则运行失败

标签 linux shell ubuntu wait gnu-parallel

我可以看到有并行命令可以执行与我想要的类似的操作,答案在这里:run commands in parallel with exit fail if any command fails

但是我使用的是非常小的 vm 镜像,所以我不能使用 parallel

那么是否可以并行运行命令并在批处理中任何命令失败时返回存在状态失败。

例。

(npm install --global bower ng-cli) & (cd $1 npm install) & (cd $2 bower install); wait

在上面的命令中,如果第二个命令失败,它应该返回退出状态失败。

如果我需要提供更多信息,请告诉我。

(最坏的情况)如果有人可以帮助我将上述命令转换为并行命令,那也很有用。

最佳答案

使用 GNU 并行:

parallel --halt now,fail=1 ::: \
  "npm install --global bower ng-cli" \
  "cd $1 npm install" \
  "cd $2 bower install" && echo All is OK

一旦其中一个作业失败,它将返回失败。

关于linux - 并行运行命令,如果任何命令使用等待失败,则运行失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53059272/

相关文章:

python - 使用 apt_pkg 以编程方式安装 debian 软件包时出错

c# - Linux + ARM + KINECT + C# + MonoDevelop,这可能吗?

shell - FFmpeg如何在shell脚本中反转gif

linux - 将当前目录中的所有可执行文件移动到单独文件夹的 shell 脚本

ubuntu - 在 ubuntu 上本地运行 Neo4J

c - 我在这个终端做什么? : C Programming

node.js - 托管多个 Node JS 应用程序的 digital ocean ubuntu 14.04

c++ - 错误 : no match for ‘operator=’ (operand types are ‘FILE and ‘FILE* )

c - Unix 套接字的 sockaddr_un.sun_path 区分大小写吗?

linux - 如何使用 commhe 和 line 为 whiptail 提供输入