通信アダプタ用 Java CAPS 環境コンポーネントの構成

FTP 発見的設定パラメータ

ここでは、FtpHeuristics.cfg ファイルに含まれる BatchFTP の発見的解決に関する設定パラメータについて説明します。BatchFTP 発見的設定ファイルである FtpHeuristics.cfg には、「プラットフォームの選択」に示されたプラットフォームのそれぞれについて、パラメータの完全なセットが含まれています。

FTP 発見的設定パラメータについては、表 33 で説明されています。具体例については、表 34 を参照してください。

表 33 FTP 発見的設定パラメータ

名前 

説明 

必要な値 

FTP サーバーでサポートされるコマンド 

説明

特定のホスト上の FTP サーバーがサポートするコマンドを指定します。 

必要な値

リストから選択した 1 つ以上の FTP コマンド。 

スキップするヘッダー行 

後述の「ヘッダー指定正規表現」設定パラメータに従ってヘッダーとみなし、スキップする LIST コマンドの先頭行の数を指定します。

負でない整数。ヘッダーがない場合は 0 (ゼロ) を入力します。 

具体例は、表 34 の「スキップするヘッダー行」を参照してください。

ヘッダー指定正規表現 

LIST コマンドの出力からヘッダーを構成する行を識別するために使用される正規表現を指定します。ヘッダーとして宣言されたすべての行 (前述の「スキップするヘッダー行」を参照) は、この正規表現に一致する必要があります。

正規表現。デフォルトは、FTP サーバーのオペレーティングシステムによって異なります。LIST コマンドの出力に含まれるヘッダー行を識別する確実な方法がない場合は、このパラメータを未定義のままにしてください。

追加情報

正規表現 "^ *total" は、ヘッダーの各行が "total" で始まり、場合によってはその直前に空白が入ることを示します。具体例は、表 34 の「ヘッダー指定正規表現」を参照してください。

正規表現が定義されていない場合は、「スキップするヘッダー行」設定パラメータの値だけでヘッダーが判定されます。

スキップするトレーラ行 

トレーラ指定正規表現」に従ってトレーラとみなし、スキップする LIST コマンドの末尾行の数を指定します。

負でない整数。トレーラがない場合は 0 (ゼロ) を入力します。 

トレーラ指定正規表現 

LIST コマンドの出力からトレーラを構成する行を識別するために使用される正規表現を指定します。トレーラとして宣言されたすべての行 (「スキップするトレーラ行」を参照) は、この正規表現に一致する必要があります。

正規表現。LIST の出力に含まれるトレーラ行を識別する確実な方法がない場合は、このパラメータを未定義のままにします。

正規表現が定義されていない場合は、「スキップするトレーラ行」設定パラメータの値だけでトレーラが判定されます。

ディレクトリ指定正規表現 

LIST コマンドの出力から外部ディレクトリを識別するために使用される正規表現を指定します。ディレクトリは取得できないため、ファイルリストから除外する必要があります。

正規表現。LIST の出力に含まれるディレクトリを識別する確実な方法がない場合は、このパラメータを未定義のままにします。

正規表現 "^ *d" は、小文字の "d" で始まる行がディレクトリを示し、場合によってはその直前に空白が入ることを指定します。具体例は、表 34 を参照してください。

ファイルリンクの実データが使用可能 

FTP サーバーがファイルリンク (ファイルへのポインタ) 自体の内容ではなく実際のファイルのデータを返すオペレーティングシステムで、ファイルがファイルリンクである可能性があるかどうかを指定します。 

はい」または「いいえ

ファイルリンク指定正規表現 

LIST コマンドの出力から外部ファイルリンクを識別する正規表現を指定します。ファイルリンクは実際のファイルへのポインタで、LIST コマンドの出力では、通常何らかの視覚的な記号 (-> など) とファイル名の組み合わせによって示されます。返されるリストに含まれるリンク名だけが必要になります。

正規表現。LIST の出力に含まれるファイルリンクを識別する確実な方法がない場合は、このパラメータを未定義のままにします。

追加情報

正規表現 "^ *l" は、小文字の "l" で始まる行がファイルリンクを示し、場合によってはその直前に空白が入ることを指定します。具体例は、表 34 を参照してください。

ファイルリンク記号正規表現 

LIST コマンドの出力に含まれる外部ファイルリンク名を解析する正規表現を指定します。返されるファイルリストのリンク名だけが必要になります。

正規表現。LIST の出力に含まれるファイルリンクを識別する確実な方法がない場合は、このパラメータを未定義のままにします。

正規表現 "[ ] ->[ ]" は、空白で囲まれた矢印 (" -> ") によってファイルリンク記号が表されることを定義します。解析時には、記号の右側にあるファイル名だけが使用されます。 

表 34 の「ファイルリンク記号正規表現」の例では、"public_html" だけが使用され、文字 "p" は使用されません。

リスト行形式 

各行のフィールドが空白区切りと固定のどちらであるか、つまり、情報が常に特定の桁に現れるかどうかを指定します。 

空白区切り」または「固定」。

固定」リスト行形式の場合は、左端の桁を第 1 桁とした場合の桁数を表す値を入力します。「空白区切り」リスト行形式の場合は、左端のフィールドを第 1 フィールドとした場合のフィールド数を表す値を入力します。

どちらの場合も、最小数を決定できないときはこの値を 0 に設定します。 

追加情報

表 34 の「リスト行形式」の例では、空白区切り行の最小フィールド数は 9 です。

有効なファイル行の最小位置数 

リスト行を有効なファイル名行とみなすのに必要な位置の (内包的な) 最小数を指定します。 


注 –

URL FTP プロキシは、先頭の空白、末尾の空白、またはその両方を含むファイル名を確認できません。


ファイル名が最後のエンティティー 

ファイル名が各行の最後のエンティティーであるかどうかを指定します。これにより、ファイル名に空白を含めることができます。ただし、先頭または末尾の空白はサポートされません。 

はい」または「いいえ

ファイル名の位置 

ファイル名の (内包的な) 開始位置を指定します。 

固定」リスト行形式の場合は、左端の桁を第 1 桁とした場合の桁数を入力します。「空白区切り」リスト行形式の場合は、左端のフィールドを第 1 フィールドとした場合のフィールド数を入力します。

追加情報

空白区切り」リスト行形式の場合のみ、ファイル名の途中に空白があると、ファイル名が複数のフィールドにまたがる可能性があります。具体例は、表 34 の「ファイル名の位置」を参照してください。

ファイル名の長さ 

ファイル名の最大長を表します。「固定」リスト行形式の場合にのみ有効です。

次のいずれかを入力します。 

  • 整数: 正の長さは、ファイル名が最大フィールド幅の内部で右詰めにされ、先頭の空白が破棄されることを意味します。

    • 負の長さ: 絶対長と比較して、ファイル名が左詰めにされ、末尾の空白が破棄されることを意味します。

    • ゼロ (0) 値の長さ: ファイル名がファイルリスト行の末尾にある場合、この値はファイル名フィールドが行の末尾まで拡張されることを意味します。


      注 –

      空白区切りのリスト行形式では、この値は常にゼロ (0) です。ただし、「空白区切り」リスト行形式を指定したにもかかわらず「ファイル名の長さ」パラメータを指定した場合は、ファイル名フィールドが指定された長さを超えたときに、リスト行データの残りが次の行に現れることになります。


ファイル拡張子の位置 

ファイル名拡張子をメインファイル名と切り離して表示するオペレーティングシステムについて、ファイル拡張子の左端の位置を指定します。 

固定」リスト行形式の場合は、左端の桁を第 1 桁とした場合の桁数を入力します。「空白区切り」リスト行形式の場合は、左端のフィールドを第 1 フィールドとした場合のフィールド数を入力します。UNIX システムのようにファイル拡張子が存在しない場合は、値をゼロ (0) に設定します。

ファイル拡張子の長さ 

ファイル拡張子の最大長を表します。「固定」リスト行形式の場合にのみ有効です。

次のいずれかを入力します。 

  • 整数

    • 正の長さ: ファイル拡張子が最大フィールド幅の内部で右詰めにされ、先頭の空白が破棄されることを意味します。

    • 負の長さ: ファイル拡張子が左詰めにされ、末尾の空白が破棄される (絶対長が使用される) ことを意味します。

    • ゼロ (0) 値の長さ: 空白区切りリスト行形式では、常にゼロ (0) にします。

ファイルサイズが検証可能 

ファイルサイズがディレクトリリスト内で検証可能であり、有効であり、正確であるかどうかを指定します。 

はい」または「いいえ」「ファイルサイズ安定性チェック」設定可能パラメータも有効にする必要があります。

追加情報

リスト行のファイルサイズフィールドが有効でない (つまり、存在はするが、近似値しか表さない) 場合も、このパラメータの値を「いいえ」にする必要があります。ただし、リストのどの行が有効なファイル名を表すかを判定しやすくするには、「ファイルサイズの位置」でファイルサイズの位置も宣言する必要があります。具体例は、表 34 の「ファイルサイズが検証可能」を参照してください。


注 –

このパラメータを使用しても、ファイルが実際に安定していることは保証されません。この機能は古い FTP 実装との下位互換性のみを目的としているため、重要なデータに対してこの機能を使用することはお勧めしません。


ファイルサイズの位置 

リスト行のファイルサイズを表す位置の左端を指定します。一部のオペレーティングシステムでは、表示される値が実際のファイルサイズを反映しない場合もありますが、この位置は行に有効なファイル名が含まれていることを確認するために重要です。 

負でない整数。「固定」リスト行形式の場合、この位置の値は左端を第 1 桁とした場合の桁数です。「空白区切り」リスト行形式の場合、この値は左端を第 1 フィールドとした場合のフィールド数です。LIST 行にサイズフィールドがない場合は、このパラメータをゼロ (0) に設定します。具体例は、表 34 の「ファイルサイズの位置」を参照してください。

ファイルサイズの長さ 

固定」リスト行形式の場合に、ファイルサイズフィールドの最大幅 (桁数) を指定します。

負でない整数。「空白区切り」リスト行形式の場合は、この値をゼロ (0) に設定します。

絶対パス名の特殊エンベロープ 

絶対パス名を囲むのに必要な特殊エンベロープ文字 (たとえば、MVS で使用される単一引用符など) を指定します。単一引用符はディレクトリ名の先頭にのみ使用します。 

エンベロープ文字のペア。先頭と末尾の文字が同じである場合も、2 回入力します。 

オペレーティングシステムでエンベロープ文字が必要とされない場合は、このパラメータを未定義にします。 


注 –

UNIX では、このパラメータは常に未定義です。


ディレクトリリストに絶対パス名を表示 

ディレクトリ名に対して DIR コマンドを使用したときに表示されるファイル名が絶対パス名かどうかを指定します。

はい」または「いいえ


注 –

UNIX では、この文字は常に「いいえ」に設定されます。


絶対パス名の区切り文字セット 

ディレクトリ名またはそれに相当するものをほかのディレクトリ名やファイル名から切り離すために特定の区切り文字が必要な絶対パスを指定します。 

次の絶対パスの区切り文字を左から順に入力します。 

  • 最初の (左端の) ディレクトリ区切り文字

  • 中間のディレクトリ区切り文字

  • 最初の (左端の) ファイル名区切り文字

  • (オプション) 最後の (右端の) ファイル名区切り文字

特定の区切り文字がない場合は、プレースホルダとして機能する "\0" (円記号とゼロ) を使用します。円記号からなる区切り文字は、もう 1 つの円記号でエスケープする必要があります。詳細は、表 35 を参照してください。

リスト取得前のディレクトリ移動 

DIR コマンドを発行して目的のディレクトリに含まれるファイルのリストを取得する前に、ディレクトリ移動 (cd) コマンドを実行する必要があるかどうかを決定します。

はい」または「いいえ


注 –

現在の Batch アダプタの実装は、このパラメータを使用しません。


ディレクトリ名に終端文字が必要 

ディレクトリ名の直後にファイル名が付かない場合に、(たとえば、MVS のように) 終端文字としてディレクトリの終わりを表す区切り文字が必要かどうかを決定します。 

はい」または「いいえ

表 34 BatchFTP の発見的解決に関する設定パラメータの例

名前 

例 

スキップするヘッダー行 


      total 6
      -rw-r-----   1 ed        usr           110 Apr 15 13:43 AAA
      -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa

ヘッダー指定正規表現 


      total 6
      -rw-r-----   1 ed        usr           110 Apr 15 13:43 AAA
      -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa

ディレクトリ指定正規表現 


      drwxr-xr-x   2 ed    usr     2048 Apr 17 17:43 public_html

ファイルリンク指定正規表現 


      lrwxr-xr-x   2 ed        usr   2048 Apr 17 17:43 p ->       public_html

ファイルリンク記号正規表現 


     lrwxrwxrwx   2 ed        usr  4 Apr 17 17:43 p -> public_html

リスト行形式 


      -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa
      ^^^^^^^^^^   ^ ^^        ^^^           ^^^ ^^^ ^^ ^^^^^ ^^^
           1       2  3         4             5   6  7    8    9
                                                         File Name

ディレクトリ指定正規表現 


      drwxr-xr-x   2 ed    usr     2048 Apr 17 17:43 public_html

ファイル名の位置 


      -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa
      ^^^^^^^^^^   ^ ^^        ^^^           ^^^ ^^^ ^^ ^^^^^ ^^^
          1        2  3         4             5   6  7    8    9
                                                         File Name

ファイルサイズが検証可能 


       -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa
                                              ^^^
                                              File Size

ファイルサイズの位置 


       -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa
       ^^^^^^^^^^   ^ ^^        ^^^           ^^^ ^^^ ^^ ^^^^^ ^^^
            1        2  3         4             5   6  7    8    9
                                           File
                                              Size

次のテキストは、ファイルサイズの有効な数値表現を表しています。 


      1234 or 1,234,567 or -12345 or +12345 or ’  1234  ’ or 12/34       or 1,234/56

次のテキストは、ファイルサイズの無効な数値表現を表しています 。^ はエラーの発生箇所を示します。 


      ’12 34’ or 123,45,678 or 123-456-789 or --123 or 123-
         ^          ^                 ^        ^          ^
      or 12345678901 or any number > 4294967295 or < -2147483647
         ^ (too large)
      or 123.45 or 12AB34 or 0x45 or ,123,456 or 12//34
            ^        ^        ^      ^              ^
      or /123 or 123/ or 12,3/45
         ^          ^        ^

表 35 プラットフォームごとの区切り文字とパス名の形式

OS

パス名の形式

区切り文字セット

       
   

Enter 

UNIX 

/dir1/dir2/file.ext

 

/// 

Windows 

C:\dir1\dir2\file.ext

\\ 

\\ 

\\ 

 

\\\\\\ 

VMS 

disk1:[dir1.dir2]file.ext;1

[.]; 

MVS PDS 

dir1.dir2(メンバー)

\0 

\0.() 

MVS Sequential 

dir1.dir2.filename

\0 

 

\0.. 

MVS GDG 

dir1.dir2.file(version#) (注を参照)

\0 

 

\0.. 

AS400 

dir1/file.ext

\0 

 

\0/. 

version# は、現在の世代が 0、新しい世代が +1、古い世代が -1 (-2、-3 など) です。