Simply don’t put whole commands in variables. You’ll get into a lot of trouble trying to recover quoted arguments.
Also:
- Avoid using all-capitals variable names in scripts. It is an easy way to shoot yourself in the foot.
- Don’t use backquotes. Use $(…) instead; it nests better.
#! /bin/bash
if [ $# -ne 2 ]
then
echo "Usage: $(basename $0) DIRECTORY BACKUP_DIRECTORY"
exit 1
fi
directory=$1
backup_directory=$2
current_date=$(date +%Y-%m-%dT%H-%M-%S)
backup_file="${backup_directory}/${current_date}.backup"
tar cv "$directory" | openssl des3 -salt | split -b 1024m - "$backup_file"