如何创建 cron 任务以将文件上传到 FTP 服务器

如何创建 cron 任务以将文件上传到 FTP 服务器

我想创建一个 cron 任务,将文件从我电脑上的目录上传到我的 FTP 服务器。我希望它每天午夜执行此操作。我对 cron 几乎一无所知,所以如果我听起来很愚蠢,我深表歉意!

答案1

这是用于传输一个文件的 FTP 示例脚本:(请注意,您可以使用 FQDN 而不是 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)

本教程也能帮助你。

答案2

男人crontab会显示你所需要的内容。你需要的内容如下:

0 0 * * *  yourScript.sh

在您的 crontab 文件中。请注意,脚本在cron精简环境中运行,因此您必须在该脚本中指定脚本所需的环境设置。

相关内容