Как создать задание cron для загрузки файлов на FTP-сервер

26781
Christopher

Я хотел бы создать задание cron, которое загружает файлы из каталога на моем компьютере на мой FTP-сервер. Я хотел бы сделать это ежедневно в полночь. Я почти ничего не знаю о cron, поэтому извиняюсь, если выгляжу глупо!

4
Это должно перейти к superuser.com, так как это не вопрос, связанный с программированием. t0mm13b 14 лет назад 2

2 ответа на вопрос

10
microspino

Это пример сценария FTP для передачи одного файла: (Обратите внимание, что вы можете использовать полное доменное имя вместо IP)

#!/bin/bash  # $1 is the file name for the you want to tranfer # usage: this_script <filename> IP_address="xx.xxx.xx.xx" username="remote_ftp_username" domain = sample.domain.ftp password= password  ftp -n > ftp_$$.log <<EOF verbose open $IP_address USER $username $password put $1 bye EOF 

Добавьте > ftp_$$.logтолько если вам нужно войти. Тогда вы можете использовать

crontab -e 

Команда для редактирования таблицы cronjob и добавить свой скрипт.

Это пример:

Если вам понравился скрипт выше (предположим, что он у вас дома и его имя myscript.sh) /home/myscript.sh, запускайте его каждый день в 2 часа ночи, вы должны сделать:

# crontab -e 

а затем вы должны добавить следующую запись:

0 2 * * * /home/myscript.sh 

Для справки, здесь у вас есть параметры записи crontab, означающие:

* * * * * command to be executed - - - - - | | | | | | | | | ----- Day of week (0 - 7) (Sunday=0 or 7) | | | ------- Month (1 - 12) | | --------- Day of month (1 - 31) | ----------- Hour (0 - 23) ------------- Minute (0 - 59) 

Этот урок также может помочь вам.

0
Brian Agnew

Человек crontab покажет вам, что вам нужно. Вы хотите что-то вроде:

0 0 * * * yourScript.sh 

в вашем файле crontab. Обратите внимание, что сценарии cronвыполняются в урезанной среде, поэтому вам придется указать настройки env, которые требуются сценарию в этом сценарии.