在Ubuntu中设置SFTP定时任务,通常使用cron来实现,具体步骤如下:
openssh-client和cron,可使用命令sudo apt update和sudo apt install openssh-client cron进行安装。#!/bin/bash
# SFTP服务器信息
HOST='your_sftp_server'
PORT='22'
USERNAME='your_username'
# 本地目录
LOCAL_DIR='/path/to/local/directory'
# 远程目录
REMOTE_DIR='/path/to/remote/directory'
# 使用sftp命令进行文件传输
sftp -oPort=$PORT $USERNAME@$HOST <<EOF
cd $REMOTE_DIR
put $LOCAL_DIR/*
bye
EOF
chmod +x命令为脚本添加执行权限,如chmod +x ~/sftp_script.sh。crontab -e命令编辑当前用户的crontab文件,添加一行来指定任务的执行时间和脚本路径。例如,每天凌晨2点执行脚本可添加:0 2 * * * /home/your_username/sftp_script.sh >> /home/your_username/sftp_log.log 2>&1。