linux 在子目录中查找并执行脚本

pokxtpni  于 2022-11-02  发布在  Linux
关注(0)|答案(1)|浏览(198)

我有一个文件系统结构如下:

  • 父目录
  • 管弦乐器
  • init.sh
  • 子目录1
  • install.sh
  • 子目录2
  • install.sh
  • 子目录3
  • install.sh

在www.example.com内init.sh,我有:


# !/bin/bash

set -e

###################### 

# Run all installers #

###################### 

cd "$(dirname $0)"/..

# find the installers and run them interatively

find ../ -name install.sh -type f -exec chmod a+x {} \;
find . -name install.sh | while read installer ; do sh -c "${installer}" ; done

这在大多数情况下都是有效的,但它是脆弱的。如果某个install.sh脚本遇到问题,该init.sh脚本将停止。如果发生这种情况,我希望它继续运行下一个install.sh脚本。但我不确定如何使其工作。

8zzbczxx

8zzbczxx1#

sh -c "${installer}"替换为sh -c "${installer} || true"应该可以,因为true总是返回0。

相关问题