如何使用另一个 shell 脚本一次逐个运行多个 shell 脚本

如何使用另一个 shell 脚本一次逐个运行多个 shell 脚本

亲爱的专家,我遇到了一个小问题...我试图一次运行多个具有相同扩展名(.sh)的 shell 脚本,这些脚本位于目录中。到目前为止,我编写了一个如下所示的常用脚本。但问题是它没有完成运行,而是继续运行。我无法找出问题所在。我希望一些专家可以研究一下。我的小代码如下。如果我执行 bash scriptone.sh、bash scriptkk.sh 之类的操作,它可以正常工作,但我不想手动执行。谢谢

 #!/bin/sh
 for f in *.sh; do
  bash "$f" -H 
done

答案1

如果您在问题中引用的通用脚本也有.sh扩展名,并且与您尝试执行的所有其他脚本位于同一目录中,那么您将无限循环遍历所有文件.sh,因为您将以递归方式调用通用脚本。

您可以通过多种方式解决此问题,例如,将通用脚本移动到其他位置,或将所有非通用脚本放在特定子目录中,然后修改通用脚本以在那里找到它们。

相关内容