shell編寫

#判斷環境變量BLACK_LIST的字符串長度是否爲0
#設置shell變量BLACK_LIST的值爲環境變量BLACK_LIST的值
if [ -n "$BLACK_LIST" ]; then 
    BLACK_LIST="--blacklist $BLACK_LIST"
fi
#判斷環境變量PRODUCER_COUNT的字符串長度是否不爲0
#設置shell變量PRODUCER_COUNT的值爲環境變量DEFAULT_PRODUCERS的值
if [ -z "$PRODUCER_COUNT" ]; then
    PRODUCER_COUNT=$DEFAULT_PRODUCERS
fi

if [ -n "$SOURCE" ];then
    #截取環境變量SOURCE_DEST從第一個字符開始的連續四個字符
    #SOURCE_BROKERS=`expr substr "$SOURCE_DEST" 1 4`
    #將環境變量SOURCE的值有小寫字母轉化成大寫字母
    SOURCE=`echo $SOURCE | tr a-z A-Z`
    #將以shell變量的值爲名字的變量的值賦給shell變量SOURCE_BROKERS
    SOURCE_BROKERS=`eval echo "$"$SOURCE`
    echo "source $SOURCE_BROKERS"
else
    echo "Specify SOURCE"
    exit 1


if [ -n "$DEST" ];then
#字符串連接        CONSUMER_GROUP_ID=${DEST}"_mirror_"${MARATHON_APP_ID}
    echo "consumer_group_id $CONSUMER_GROUP_ID"

    #DEST_BROKERS=`expr substr "$SOURCE_DEST" 6 4`
    DEST=`echo $DEST | tr a-z A-Z`
    DEST_BROKERS=`eval echo "$"$DEST`
    echo "dest $DEST_BROKERS"
else
    echo "Specify DEST"
    exit 2
fi

#按照如下內容生成../config/consumer.config的配置文件
cat <<- EOF > ../config/consumer.config
    bootstrap.servers=$SOURCE_BROKERS
    group.id=$CONSUMER_GROUP_ID
EOF


cat <<- EOF > ../config/producer.config
    bootstrap.servers=$DEST_BROKERS
    compression.codes=none
    producer.type=async
    serializer.class=kafka.serializer.DefaultEncoder
EOF

參考鏈接
linux shell 的here document 用法 (cat << EOF)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章