以排序方式运行shell脚本?

尼达尔

我有4个Shell脚本,我想按顺序运行它们:

脚本1->脚本2->脚本3->脚本4

在本地计算机上,我可以通过使脚本可执行并创建新的Shell脚本来确保这一点:

#!/bin/bash
. script1.sh
. script2.sh
. script3.sh
. script4.sh

并且如果其中一个脚本位于远程计算机中(例如script2.sh),我该如何:

  1. 远程运行shell脚本
  2. 确保排序。

注意:所有脚本都有一个无限循环。

奥利维尔·杜拉克(Olivier Dulac)

我假设您可以使用以下命令运行脚本:(./script1.sh在外壳程序中启动脚本),而不是. script1.sh(它将在您当前的外壳程序中获取源代码)?

如果是这样:

#!/bin/bash

./script1.sh   &&
{ ssh user@remote "cd /path/to/  && script2.sh" ; }  &&
./script3.sh   &&
./script4.sh

&& 确保仅在前一个返回“ 0”(=“ ok”)的情况下执行以下指令(因此,请确保脚本可以,如果确定可以返回正确的“ 0”,否则返回其他值(一个小的正整数,例如“ 1”) “)(如果不正确)。

(请注意,您可以&&像我在此处这样在一行的末尾加上下一行的内容,而无需\在中间插入换行符。在该行的末尾的“ &&”告诉bash该行可以在下一行继续。[感谢@Dennis纠正我:我认为当下一行“ &&”时,它也可以不放置'\ newline',这更易读...但是不起作用。如果要在下一行使用“ &&”,则需要在前一个换行符后加反斜线])。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章