#!/bin/bash ## source de la configuration source $(realpath $(dirname $0))/$(echo $(basename $0)| sed 's/.sh/.d/g')/config ## source des functions de base source ${DirFct}/function GetRoot OPTSTRING="hcal:t:" while getopts ${OPTSTRING} opt; do case ${opt} in a) Action=Apply;; c) Action=Check;; l) Level=${OPTARG};; t) Type=${OPTARG};; h) Usage;; ?) echo "Invalid option: -${OPTARG}."; exit 1;; esac done CheckArg source ${DirFct}/function_${Action} [[ $Level -eq 2 ]] && RealLevel=\* || RealLevel=1 DirAction=$(realpath $(dirname $0))/${Action}/${Type}/${RealLevel} RealLogDir=$(dirname ${LogDir})/${Action}_$(basename ${LogDir}) [[ ! -d ${RealLogDir} ]] && mkdir -p ${RealLogDir} || true for File in $(find -L ${DirAction} -type f -name run.sh| sort -n) do cd $(dirname ${File}) Test=$(basename $(dirname ${File})) export CptErr=0 TxtDesc=$(cat ./run.sh | grep ^'##' | sed 's/#//g') bash ${Debug} ./run.sh &> ${RealLogDir}/${Test}.log LogTest ${?} ${Action} ${Test} "${TxtDesc}" done