3

以下を使用して、キューの内容をファイルに書き込みます。

q -xb -ITESTQ -mTEST > messages.out

ファイルに正常に書き込まれたキューに 3 つのバイナリ メッセージがありました。ここで、同じファイルをキューにロードする必要があります (後で同じキューを)。私がする時:

q -xb -oTESTQ -mTEST < messages.out

3 つではなく 9 つのメッセージが表示されます。ファイルのロード中にフォーマットが読み違えられていると思います。q プログラムに -X オプションがあることに気付きました。それの使用法は何ですか?他にどのようなオプションがありますか?

4

1 に答える 1

2

これについては、QLoad プログラム ( SupportPac MO03 ) を確認する必要があります。Q プログラムと同じ作成者であり、すべてが優れたツールです。また、無料です。著者がマニュアルで説明しているように:

MA01 (Q ユーティリティ) SupportPac をリリースして以来、キューからメッセージをアンロードし、続いて再ロードするために使用する方法を説明するよう定期的に要求されてきました。答えは常に、これは MA01 の目的ではなく、確かに利用可能なユーティリティがあるに違いないというものでした。さて、これらの要求が十分にあった後、私は自分でユーティリティを探しましたが、法案に適合するものは実際には見つかりませんでした. 必要だったのは、キューをテキスト ファイルにアンロードする非常に単純な (洗練されていないと言う人もいる) プログラムでした。テキスト ファイルの概念は重要でした。多くのユーザーが、作成したファイルを変更できることを望んでいたからです。また、テキストベースのファイルの方が移植性が高いこともわかっているため、Windows などでキューをアンロードする場合に便利だと思われます。次に、Solaris マシンにメッセージを再度ロードします。この方法の欠点は、ファイルがバイナリ モードの場合よりも大きくなることです。文字自体ではなく文字の 16 進表現を使用してデータを格納すると、基本的に 2 倍のスペースが使用されます。ただし、一般に、このプログラムを使用して膨大な量のメッセージ データをアンロードすることは想定していませんが、デッド レター キューにある少数のテスト メッセージまたは少数の不正なメッセージを変更して別の場所で再ロードすることは想定していません。

于 2012-08-03T19:45:28.797 に答える