Script Bash para FTP apenas arquivos do tipo gz no diretório atual

Script Bash para FTP apenas arquivos do tipo gz no diretório atual

Eu tenho um script bash que faz cd para o diretório correto e usa o comando mput para enviar por FTP todos os arquivos do diretório para um servidor remoto, conforme abaixo:

for from_dir in $DATE_LIST 
do
    cd ${FILE_LANDING_DIR}/deltas/${from_dir}
    ftp_files
done

ftp_files () {
    ftp -inv $HOST <<-EOF > $LOG_DIR/tempftplog
    user $USER $PASS 
    cd ${ID_LANDING_DIR}
    mput *
    bye 
    EOF
} 

Tentei alterar a função ftp_files para ftp apenas os .gzarquivos desse diretório, alterando a linha de mput *para, mput *.gzmas não funcionou.

Alguém pode me dizer como posso fazer isso uma vez no comando ftp?

Responder1

Não funciona mput *.gz? Caso contrário, tente globprimeiro o comando ftp.

http://man.cx/ftp

Responder2

Que tal realizar uma pesquisa de diretório e canalizá-la para o mput?

ls *.gz | mput

Não posso testar isso agora porque não estou em uma caixa Linux, então pode ser necessário ajustá-lo para que funcione 100% corretamente.

informação relacionada