基于shell的自动化编译脚本 <一>

1、基于shell的一键式编译脚本

<一>多参数传入编译脚本;

<<COMMENT
如果要写一个编译脚本有很多选项采用如下方式:
shift 将传入的参数前移;
假如脚本名字是start_compile.sh ;
运行命令行: sh start_compile.sh  条件1 条件3 
执行输出:
	条件1
	条件3
	end
		
while:
	case 条件:
		条件1)
			echo "条件1"
			shift
		;;
		条件2)
			echo "条件2"
			shift
		;;
		条件3)
			echo "条件3"
			shift
		;;
		*)
			break
		;;
	esac
done
echo "end"
COMMENT


DO_MODULE=all

DOCLEAN=0
BOOTCLEAN=0
KERNELCLEAN=0
ROOTFSCLEAN=0

REUNZIP=0
BOOTREUNZIP=0
KERNELREUNZIP=0
ROOTFSREUNZIP=0
DORECOVER=0

echo "start compile !!!"
while :
do
  case $1 in
  -m | --module)
    DO_MODULE=$2
    echo "module is $DO_MODULE"
    shift 2
    ;;
  -c | --clean)
    DOCLEAN=1
    echo "do clean is $DOCLEAN"
    shift
    ;;
  -r | --recover)
    DORECOVER=1
    echo "do recover is $DORECOVER"
    shift
    ;;
  -u | --unzip)
    REUNZIP=1
    echo "do reunzip is $REUNZIP"
    shift
    ;;
  --help)
    echo "start_compile ! "
	exit 0;
    ;;
  -*)
    echo "Unknown option '$1', try '--help'"
    exit 1
    ;;
  *)
	echo "in the this"
    break
    ;;
  esac
done

echo "end"

猜你喜欢

转载自blog.csdn.net/c4679281314/article/details/124426732