Где файл пароля? cron
имеет другой PATH
, что может привести к тому, что скрипты будут вести себя по-разному, когда вы запускаете их самостоятельно.
Возможное решение одно, поставить
cd `dirname $0`
в верхней части скрипта, который будет cd
в каталоге скрипта при его запуске.
Возможное решение два, попробуйте указать файл напрямую с абсолютным путем:
gpg --passphrase-file /some/path/password.txt -o "$destination/$FILENAME" -d "$FILE"