MOVIMENTAÇÃO DE ARQUIVOS VIA CURL

 #!/bin/bash


#BASE_PATH => Diretório onde contém os arquivos .tgz a serem enviados

BASE_PATH=/opt/zimbra/backup/prontos

ENVIADOS=${BASE_PATH}/enviados

PID_FILE=/tmp/pid_import.$$

HOST_DEST="https://repositorio.exemplo.com.br/backup/"

SLEEP=120

USER='usuario'

SENHA='password'


[ -d "${ENVIADOS}" ] || mkdir -p "${ENVIADOS}"


cd $BASE_PATH


LOG(){

    echo -e "$(date "+%D %T") $*"

}


SAIR(){

    LOG "Fim"

    RET=$(rm -vf $PID_FILE)

    LOG "$RET"

    exit

}


>$PID_FILE

LOG "Início PID: $PID_FILE"

cd ${BASE_PATH}

while [ -e "$PID_FILE" ];do

    LOG "Atualizando contas."

    DUMPS=$(ls -tr *@* 2>/dev/null)

    if [ -z "$DUMPS" ]; then

        LOG "Nenhum arquivo .tgz no diretório corrente."

    else

        for DUMP in $DUMPS;do

            LOG "Verificando arquivo $DUMP."

            [ -e "$PID_FILE" ] || SAIR

            lsof $DUMP

            if [ $? -ne 0 ] ;then

                let "contr=$contr + 1"

                FILE_SIZE=$(stat -c%s $DUMP)

                let "FILE_SIZE_MB = $FILE_SIZE / 1048576"

                LOG "Arquivo $contr $DUMP com ${FILE_SIZE_MB}Mb"

                curl --silent -k -u "${USER}:${SENHA}" -T $DUMP "$HOST_DEST" > /dev/null

                mv $DUMP ${ENVIADOS}

            else

                LOG "Arquivo $DUMP não está pronto para importar."

            fi

        done

    fi

    [ -e "$PID_FILE" ] || SAIR

    LOG "Sleeping... ${SLEEP}s"

    #SAIR

    sleep $SLEEP

done

SAIR


Comentários

Postagens mais visitadas deste blog

PYTHON - ENVIAR MENSAGEM VIA TELEGRAM

Dicas Zimbra

ZIMBRA - BACKUP CONTAS DE EMAILS FECHADAS A MAIS DE 90 DIAS