「駑馬十駕」を信念に IT系情報を中心に調べた事をコツコツ綴っています。

HULFTには「送受信ジョブを定義して使う方法」以外に、utlsendなどのユーティリティ系コマンドを直接呼び出してファイル転送や加工を行う手段があります。
これらは事前の送受信定義が不要で、コマンド実行時に条件を指定できるため、テスト送信・スポット利用・簡易処理に非常に便利です。

本記事では、JavaでHULFTコマンドを実行する例をご紹介します。

  • utlsend : ファイル送信

  • utlrecv : ファイル受信

  • utlconcat : ファイル連結

  • utlsplit : ファイル分割


Javaから外部コマンドを実行する基本

Javaでは ProcessBuilder を使うことで、外部のHULFTコマンドを呼び出せます。
エラー出力も標準出力にまとめる設定をすれば、ログ管理が容易になります。

共通の呼び出しテンプレートは以下の通りです。

以降の例では、この runCommand を利用して各ユーティリティコマンドを実行します。


1. ファイル送信(utlsend

事前の送信定義が不要で、対象ファイルと宛先ノードを直接指定できます。

  • -f : 送信するファイルパス

  • -n : 宛先ノード名(HULFTに登録済み)


2. ファイル受信(utlrecv

受信ジョブを登録せず、コマンドだけでファイルを取得できます。

  • -f : 保存先のファイル名

  • -n : 送信元ノード名


3. ファイル連結(utlconcat

複数のファイルを1つにまとめたいときに使います。

  • -o : 出力ファイル名

  • -f : 結合対象のファイル(複数指定可)


4. ファイル分割(utlsplit

大きなファイルを分割して処理したいときに使います。

  • -f : 分割対象ファイル

  • -l : 分割する行数(例:1000行ごと)


運用上の注意点

  1. PATHの設定
    Javaから呼び出す際は、utlsend.exe などのHULFTバイナリがPATHに通っている必要があります。
    通っていない場合はフルパス指定が必須です。

  2. 終了コードの確認

    • 0 : 正常終了

    • 0以外 : エラー(詳細はHULFTマニュアルのエラーコード参照)

  3. ログ管理
    実際の業務バッチでは process.getInputStream() の内容をファイル出力してログ管理することを推奨します。


まとめ

  • utlsend でファイルを即送信できる

  • utlrecv で即時受信が可能

  • utlconcat でファイルを連結

  • utlsplit でファイルを分解

これらをJavaから呼び出すことで、柔軟なファイル連携や加工処理が実現できます。

Ads by Google

0 0
Article Rating
申し込む
注目する
guest
0 コメント一覧
最も古い
最新 高評価
インラインフィードバック
すべてのコメントを見る
0
あなたの考えが大好きです、コメントしてください。x