FTP クライアント - コマンド - ファイルを実行する

クラウディア 
1. 概要
2. クライアントが Windows マシン
3. クライアントが Linux マシン(CentOS)

1. 概要

 FTP で送受信するような処理で、一連の定型の処理がある場合。  これを行う頻度にもよりますが、頻繁に実行するには、その一連の処理をテキストファイルにまとめておいて、実行したくなるのは、人情ってもんです。  しかし、外部のプログラムを使うのでなく、FTP のコマンドで使う場合は、インタラクティブな動作になるので、一工夫必要です。

2. クライアントが Windows マシン

 Windows マシンでしかやったことがなかったので、他のプラットフォームでどうやって実現するのかは知りませんでした(2019年10月4日)。  以下のようなテキストファイルを用意しておきます。  仮に「a.txt」というファイル名として、以下のような内容を記述しておきます。

open IPアドレスもしくはホスト名
ユーザ名
パスワード

・・・ FTPコマンド

disconnect
bye
 コマンドプロンプトで

C:¥>FTP -s:a.txt
 と入力することで、「a.txt」に書いた内容を実行することができます。

3. クライアントが Linux マシン(CentOS)

 本項は、「ftp 転送をシェルスクリプトで - mikeda の日記」を参考にさせていただきました。  Linux の場合です(ただし、CentOS でしかやってみていません)。  以下のようなテキストファイルを用意しておきます。  仮に「a.txt」というファイル名として、以下のような内容を記述しておきます。

open IPアドレスもしくはホスト名
user ユーザ名 パスワード

・・・ FTPコマンド

close
 ユーザ名とパスワードの書き方が、Windows の場合と異なるので注意が必要です。  末尾は、これで実行しましたが、Windows のものと同じものが使えるかもしれません。  コマンドプロンプトで

ftp -n < a.txt
 と入力することで、「a.txt」に書いた内容を実行することができます。