test.sh 902 B

1234567891011121314151617181920212223242526272829303132
  1. # 定义函数,根据路径执行install.sh脚本
  2. run_install() {
  3. now_path=$(pwd)
  4. dir="$1" # 获取install.sh所在的目录名
  5. sh_name=$2
  6. echo "$dir" "$sh_name"
  7. cd "$dir" || exit # 进入该目录
  8. # ./install.sh # 执行install.sh脚本
  9. pwd
  10. cd "$now_path" || exit # 回到上一级目录
  11. }
  12. # 逐行读取文件内容,根据=后面的值执行相应操作
  13. while read line
  14. do
  15. var=$(echo "$line" | cut -d ':' -f 2) # 提取=后面的值
  16. if [ "$var" = "ON" ]
  17. then
  18. key=$(echo "$line" | cut -d ':' -f 1) # 提取=前面的键
  19. sh_name=$(echo "$line" | cut -d ':' -f 3) # 提取=前面的键
  20. if [ -d "$key" ]
  21. then
  22. run_install "$key" "$sh_name" # 根据路径执行install.sh脚本
  23. else
  24. echo "dir not exist:$key"
  25. fi
  26. elif [ "$var" != "" ]
  27. then
  28. echo "Unknow status: $var"
  29. fi
  30. done < config.txt