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

Chr*_*her 4 networking unix cron cronjob

我想创建一个 cron 作业,将文件从我计算机上的目录上传到我的 FTP 服务器。我希望它每天午夜都这样做。我对 cron 几乎一无所知,所以如果我听起来很愚蠢,我深表歉意!

mic*_*ino 11

这是用于传输一个文件的 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
Run Code Online (Sandbox Code Playgroud)

> ftp_$$.log仅在需要日志记录时添加。然后你可以使用

crontab -e
Run Code Online (Sandbox Code Playgroud)

命令编辑 cronjob 表并添加您的脚本。

这是一个例子:

如果你喜欢上面的脚本,(假设你在家里有它,它的名字是 myscript.sh)/home/myscript.sh,每天凌晨 2 点运行,你必须这样做:

# crontab -e
Run Code Online (Sandbox Code Playgroud)

然后你必须添加以下条目:

0 2 * * * /home/myscript.sh
Run Code Online (Sandbox Code Playgroud)

作为参考,这里有一个 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)
Run Code Online (Sandbox Code Playgroud)

本教程也可以帮助您。