Если букву p перевернуть, то будет md5: проверь хэшсуммы исходного, залитого и скачанного файлов при помощи md5sum. На каком-то шаге (почти наверняка) архив заливался в текстовом формате вместо двоичного (с трансляцией переноса строки, из-за чего содержимое могло измениться).
папка /var/files
в ней куча папок с файлом. каждая папка имеет название в виде даты её создания. Каким образом заставить скрипт архивировать каждую папку отдельно и кидать на фтп,кроме последней созданной?
for i in `ls -lt /var/files | tail -n+2`; do file=/tmp/`basename $i`; tar -czf $file $i` $i; ftp_put $filename; done
Где ftp_put — функция, которая запихивает архив на ftp.
Код не проверял, непонятные команды гугли.
Сразу известный косяк: если в /var/files есть файлы, то еще и их захватит. Если папки изменяются не по порядку, то ls -lt может выдать не то. На всякий случай читай man find и man sort.
Ну, видимо, надо этот код дописать в скрипт, не?.. В функции UPLOAD приделать обработку аргумента (имени архива), а в том фрагменте, который я набросал, вызывать эту функцию (я ее ftp_put обозвал в примере).