リモート環境のLinuxから指定時刻にファイルを自動でFTP転送する

とある事情から、指定時刻に FTP 経由でファイルをアップロードする必要がありました。
ローカルマシンを使うと、コンピューターをスリーブさせていたり電源を落としていると機能しません。

なので、何月何日何時何分であろうとも決められた時間に確実にファイル転送するには、リモート環境にインストールした Linux から処理を実行する必要があります。
今回はその手順の総集編といった内容です。
それぞれの詳細は下記のエントリーに記載しています。

全体の流れは以下。

Step 1 : ローカル → リモート上の Linux へファイル転送

scp <送るファイル> htk:~/dir

Step 2 : 「ファイルを FTP 転送する」という処理のシェルスクリプトを用意

#!/bin/sh

ftp -p -n << EOF
  open <FTPサーバー名(ホスト名)>
  user <ユーザー名> <パスワード>
  binary
  cd <サーバー上のディレクトリ>
  lcd <ローカルのディレクトリ>
  put <アップロードするファイル>
  quit
EOF

Step 3 : 指定時刻にシェルスクリプトを実行

# 2022年9月19日10:00 に実行
% at -f <シェルスクリプトのファイル名> 10:00 091922

補足