mardi 27 décembre 2016

How to put if statement inside a lftp block

I am writing a bash script to download files from ftp server using lftp. I wanted to delete the files based on the second input argument.

!/bin/bash

cd $1

lftp -u found,e48RgK7s sftp://ftp.xxx.org << EOF
set xfer:clobber on
mget *.xml
if [ $2 = "prod"]; then
  echo "Production mode. Deleting files"
  mrm *.xml
else
  echo "Non-prod mode. Keeping files"
fi
EOF

However, if statement is not allowed in the lftp block before EOF.

Unknown command `if'.
Unknown command `then'.
Usage: rm [-r] [-f] files...
Unknown command `else'.

How do I embed if statement in such block?

Aucun commentaire:

Enregistrer un commentaire