FTPScript - FTPスクリプトの実行

FTPサーバーに接続して、指定したスクリプトファイルに記述されているFTPコマンドを順次実行します。
途中で、あるFTPコマンドが失敗した場合はコンポーネントはそこで実行を中止し、失敗したFTPコマンド以降のスクリプト内のコマンド列は実行されずにエラー処理に制御が移ります。
FTPコマンドで操作するローカルファイルはローカルフォルダーからの相対パスで指定します。ローカルフォルダーとは、ホームフォルダー で指定したホームフォルダーまたはlcdコマンドで指定したフォルダーを指します。
本コンポーネントでサポートしているコマンドは、下記トピック「コマンド一覧」を参照してください。

■ストリーム情報

入力フォーマットすべて
接続数1
説明すべてのストリームを入力できます。
出力フォーマットすべて
説明 入力ストリームをそのまま出力します。

■コンポーネントプロパティ

名前プロパティ型マッピング説明
スクリプトの設定方法choice- スクリプトの設定方法を指定します。
ファイル [File] - スクリプトの指定にスクリプトファイル情報 以下のプロパティを使用します。
直接入力 [Inline] - スクリプトの指定にスクリプト を使用します。
スクリプトファイル情報group-スクリプトの設定方法 が「ファイル」の場合に使用するプロパティ群です。
相対パスの起点pathResolver-スクリプトの設定方法 が「ファイル」の場合、下のファイルパス の相対パスのベースフォルダーを指定します。
プロジェクトフォルダー [Relative]
プロジェクトファイルと同じフォルダーを起点にします。
ホームフォルダー [ProjectOwner]
ユーザーのホームフォルダーを起点にします。
実行ユーザーのホームフォルダー [ExecuteUser]
実行ユーザーのホームフォルダーを起点にします。
ファイルパスremoteFile入力&出力スクリプトの設定方法 が「ファイル」の場合、FTPコマンドを記述したスクリプトファイルのファイルパスを指定します。
エンコーディングchoice入力&出力スクリプトの設定方法 が「ファイル」の場合、FTPスクリプトファイルのエンコーディングを指定します。
utf-8 - unicode utf-8
shift_jis - シフトJIS
euc-jp - EUC-JP
iso-2022-jp - ISO-2022-JP
Windows-31J - Windows-31J
utf-16 - unicode utf-16
スクリプトstring入力&出力スクリプトの設定方法 が「直接入力」の場合、FTPスクリプトの内容を記述します。
コネクションを使用boolean- 接続先にコネクション名 に指定されたコネクションを使用するかどうか選択します。
はい [true] - コネクション名 で指定されたFTP接続名の接続設定を使ってFTPまたはSFTPによる接続を行います。
いいえ [false] - コネクション情報 以下の値を使ってFTPまたはSFTPによる接続を行います。
コネクション名connection-コネクションを使用 が「はい」の場合に接続先のFTPサーバーを指定します。 コネクションペインまたは管理コンソールにて作成したFTP接続名を選択します。
コネクション情報group-コネクションを使用 が「いいえ」の場合に使用されるプロパティ群です。
プロトコルchoice入力&出力 接続先がFTPサーバーであるかSFTPサーバーであるかを指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
ftp - 接続先がFTPサーバーの場合
sftp - 接続先がSFTPサーバーの場合
サーバー名string入力&出力 接続先のFTPまたはSFTPサーバー名を指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
ポート番号int入力&出力 接続先のFTPまたはSFTPサーバーのポート番号を指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
パッシブモードboolean入力&出力 FTP接続のモードでパッシブモードを使うかどうかを指定します。
接続先がSFTPサーバーの場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
はい [true] - パッシブモードを使用します。
いいえ [false] - パッシブモードを使用しません。
ファイル名のエンコーディングchoice入力&出力 転送されるファイルのファイル名のエンコーディングを指定します。 日本語のファイル名を使わない場合(US-ASCII文字のみの場合)にはどれを指定しても構いません。
接続先がSFTPサーバーの場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
タイムアウト(秒)int入力&出力 FTPまたはSFTPクライアントとして、接続がタイムアウトするまでの時間を指定します。 最後に通信が行われてから指定時間経過するとタイムアウトとなります。
コネクションを使用 が「いいえ」の場合、この設定を参照します。 FTPPutコンポーネントFTPScriptコンポーネントFTPUploadコンポーネントではタイムアウトが有効にならないことがあります。
プロキシサーバーchoice入力&出力 管理コンソールで設定したプロキシ設定を使用するかどうかを指定します。
コネクションを使用が「いいえ」の場合にこの設定が参照されます。
使用する [true] - プロキシ設定を使用します。
使用しない [false] - プロキシ設定を使用しません。
ユーザー名string入力&出力 FTPまたはSFTPサーバーへのログイン名を指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
パスワードpassword入力&出力 上記ログイン名に対応するパスワードを指定します。
接続先がSFTPサーバーで、公開鍵認証のキーファイル が指定されている場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
公開鍵認証のキーファイルstring入力&出力 SFTPサーバーが公開鍵認証である場合に、認証で使用する秘密鍵のファイル名を絶対パスで指定します。
接続先がFTPサーバーの場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
キーファイルのパスフレーズpassword入力&出力公開鍵認証のキーファイル で指定した秘密鍵がパスフレーズで保護されている場合には、そのパスフレーズを指定します。
接続先がFTPサーバーの場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
ホームフォルダーpathResolver- FTPのホームフォルダーとして使うローカルディスクのベースフォルダーを指定します。
プロジェクトフォルダー [Relative]
プロジェクトファイルと同じフォルダーを起点にします。
ホームフォルダー [ProjectOwner]
ユーザーのホームフォルダーを起点にします。
実行ユーザーのホームフォルダー [ExecuteUser]
実行ユーザーのホームフォルダーを起点にします。
条件group-条件 関連のプロパティ群です。
操作対象日時choice入力&出力 mput、mget、mdeleteの各コマンドでファイル操作を行う場合の日付でのフィルターリングの基準を指定します。
すべて [None] - すべてのファイルを各コマンドのオペレーションの操作対象にします。
指定日時以前 [Before] - 指定日時 で設定された日時より前の更新日付をもったファイルを対象にします。
指定日時以降 [Since] - 指定日時 で設定された日時より後の更新日付をもったファイルを対象にします。
指定日時string入力&出力 上記操作対象日時 で使用するベースとなる日時を設定します。 ここで設定できる日付フォーマットは「yyyyMMddHHmmss」形式のみです。 操作対象日時 が「すべて」の場合はこの値は無視されます。
ログgroup-ログ 関連のプロパティ群です。
ログ内容choice入力&出力 FTPスクリプトの実行ログレベルを選択します。
出力しない [None] - ログを出力しません。
結果情報のみ出力する [Info] - FTPスクリプト中の各コマンドの成功・失敗の情報のみをログに出力します。
詳細情報を出力する [Detail] - FTPのプロトコルレベルのログを出力します。
相対パスの起点pathResolver-相対パスの起点 は下のログファイルパス の相対パスのベースフォルダーを指定します。
プロジェクトフォルダー [Relative]
プロジェクトファイルと同じフォルダーを起点にします。。
ホームフォルダー [ProjectOwner]
ホームフォルダーを起点にします。
実行ユーザーのホームフォルダー [ExecuteUser]
実行ユーザーのホームフォルダーを起点にします。
ログファイルパスremoteFile入力&出力 ログファイルのファイルパスを指定します。 すでに存在する場合は上書きされます。

■トランザクション処理

コミット何もしません。
ロールバック何もしません。

■エラー処理

タイプパラメーターエラー処理フロー
へのストリーム
エラー
コード
説明
汎用「汎用のパラメーター 」
を参照してください。
コンポーネントの入力ストリーム1指定日時が指定されていない場合
2スクリプト中のFTPコマンドが解釈できない場合
3スクリプト中のFTPコマンドの書式が不正の場合
4FTPコマンドの引数にパスが含まれていた場合
5FTPコマンドの引数の形式が不正だった場合
10コネクション名 に指定したコネクションが見つからない場合
11FTPサーバーに接続できない場合
12FTPサーバーからエラーが返された場合
なし その他のエラーが発生した場合

■「汎用」のパラメーター

No.名前説明
1ScriptFilenameエラーが発生したときに使われていたスクリプトファイルのフルパスの文字列
2ErrorDetailエラーが発生した理由のエラーの詳細
3ErrorLineスクリプトファイル中のエラーになった行の行番号。スクリプトのコマンドでのエラーでない場合は「0」が設定されます

■制限事項

シングルクォート(')を含むファイル名を扱うことはできません。
ダブルクォート(")を含むファイル名を扱う場合には、ファイル名をシングルクォートで囲んでください。

LISTコマンドの結果が、Windows, Unixスタイルのファイルリストのみ対応しています。それ以外の場合にはエラーとなることがあります。

■フローの強制終了

フローを強制終了すると、通常は実行中のコンポーネントの処理が終了してから次のコンポーネントに制御が遷移する時点でフローがアボートしますが、本コンポーネントでは実行中の処理を強制的に終了してフローがアボートします。強制終了された場合、トランザクションをロールバックします。

■コマンド一覧

本コンポーネントは以下のコマンドをサポートしています。

コマンド名説明
cd dirリモートフォルダーの変更
lcd dirローカルフォルダーの変更
delete remoteFileFTPサーバー上のファイルの削除
mdelete remoteFileWildcardワイルドカードによる、指定した複数ファイルのFTPサーバー上のファイルの削除
put localFile remoteFileFTPサーバーへのファイルのアップロード
mput localFileWildcardワイルドカードによる、指定した複数ファイルのアップロード
append localFile remoteFileFTPサーバー上の存在するファイルへの追加
asciiファイル転送モードを「ascii」に設定
binaryファイル転送モードを「binary」に設定
get remoteFile localFileFTPサーバーからのファイルのダウンロード
mget remoteFileWildcardワイルドカードによる、指定した複数ファイルのダウンロード
mkdir remoteDirFTPサーバー側にフォルダーを作成
rmdir remoteDirFTPサーバー側のフォルダーを削除
rename remoteFile newRemoteFileFTPサーバー上のファイル名を変更
quote command任意のFTPコマンドの実行
(※SFTPサーバーではサポートされません)