эта тема обсуждалась довольно долго, однако у меня есть вариант на тему, который я просто не могу взломать.Два дня в этом сейчас и решили пинговать сообщество.THx заранее для чтения ..
Exec.Резюме у меня есть сценарий в OS X, который работает нормально и выполняется без проблем или ошибок, когда выполняется вручную.Когда я помещаю скрипт в crontab для ежедневного запуска , он по-прежнему запускается , но он не запускает все команды (в частности, SFTP).
Я прочитал достаточно сообщений, чтобы пройти по путипроблемы среды, поэтому, как вы увидите ниже, я жестко сослался на местоположение SFTP в случае возникновения проблемы PATH ...
Единственное, о чем я могу думать, - это IdentityFile.ПРИМЕЧАНИЕ: я помещаю это в crontab для моего пользователя, а не root.Так что я понимаю, что должен подхватить на id_dsa.pub, который я создал (и который уже был передан на сервер) ..
Я не пытаюсь сделать что-то напуганноекоманды для обхода пароля и т. д. Я не знаю, почему при запуске из cron он пропускает строку SFTP.
см. код ниже .. и помощь очень ценится .. thx
#!/bin/bash
export DATE=`date +%y%m%d%H%M%S`
export YYMMDD=`date +%y%m%d`
PDATE=$DATE
YDATE=$YYMMDD
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
FEED="~/Dropbox/"
USER="user"
HOST="host.domain.tld"
A="/tmp/5nPR45bH"
>${A}.file1${PDATE}
>${A}.file2${PDATE}
BYEbye ()
{
rm ${A}.file1${PDATE}
rm ${A}.file2${PDATE}
echo "Finished cleaning internal logs"
exit 0
}
echo "get -r *" >> ${A}.file1${PDATE}
echo "quit" >> ${A}.file1${PDATE}
eval mkdir ${FEED}${YDATE}
eval cd ${FEED}${YDATE}
eval /usr/bin/sftp -b ${A}.file1${PDATE} ${USER}@${HOST}
BYEbye
exit 0