Storing a variable?

I'm writing a bash shell script to backup several mysql databases. This script will run on a daily basis and send a copy to a remote FTP repository. The filenames are in the format DATE.backup.sql. How do I store the DATE variable so I can delete/move/etc the file on the FTP server the next time the script runs?

#!/bin/bash

DATE=$(date +%d%b%y_%k.%M.%S)

cd /web/.hhome/mysql.backup/data
mysqldump -ubackup -ppassword --databases db1 db3 > $DATE.backup.sql

gzip -9 $DATE.backup.sql

crypt key < $DATE.backup.sql.gz > $DATE.backup.sql.enc.gz
rm -rf $DATE.backup.sql.gz

ftp -inv ftp.somehost.com<<ENDFTP
user hoover90 password
put $DATE.backup.sql.enc.gz
bye
ENDFTP

I can use pretty much any method, but it has to be done within this bash script.

Thanks!

At the top of the script:
read LASTDATE < .last_date

During the FTP session:
del $LASTDATE.backup.sql.enc.gz

After the FTP session:
echo $DATE > .last_date

Of course you will need some conditional logic there to deal with .last_date not existing... you could create the first .last_date file manually yourself. If you need help with that as well let us know.

Alright, everything you suggested works except for writing $DATE to .last_date. From bash, I can use the same command format (replacing $DATE with $(date +%d%b%y_%k.%M.%S), or just echo "asdfqwer1234blahblah" > .last_date), but it will not write $DATE to .last_date when the script is executed.

#!/bin/bash

read LASTDATE < .last_date
DATE=$(date +%d%b%y_%k.%M.%S)

cd /web/.hhome/mysql.backup/data
mysqldump -ubackup -ppassword --databases db1 db2 db3 > $DATE.backup.sql

gzip -9 $DATE.backup.sql
crypt asdfqwer1234 < $DATE.backup.sql.gz > $DATE.backup.sql.enc.gz
rm -rf $DATE.backup.sql.gz

ftp -inv ftp.somehost.com<<ENDFTP
user hoover90 password
del $LASTDATE.backup.sql.enc.gz
put $DATE.backup.sql.enc.gz
bye
ENDFTP

echo $DATE > .last_date

That is because you are reading the .last_date from your current working directory, then changing to /web/.hhome/mysql.backup/data before writing out the variable.

I'm guessing if you check /web/.hhome/mysql.backup/data/.last_date it will be there.

I would move the "read LASTDATE < .last_date" to AFTER the cd /web/.hhome/mysql.backup/data.

You guessed right! It works!

Thank you!