これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド xml_splitp です。
プログラム:
NAME
xml_split - 大きな XML ファイルを小さなチャンクに分割します
DESCRIPTION
「xml_split」は、(おそらく大きな) XML ファイルを受け取り、それをいくつかの小さなファイルに分割します。 の
使用されるメモリは、最大のチャンクに必要なメモリです (つまり、メモリは新しいチャンクごとに再利用されます)
かたまり)。
ツリー内の特定のレベルで分割できます (デフォルトでは、ルートの子を分割します)。
条件に基づいて (XML::Twig によって理解される XPath のサブセットを使用するため、「セクション」または
"/doc/セクション")。
生成された各ファイルは、「xml_merge」で次のことを可能にする処理命令に置き換えられます。
元のドキュメントを再構築します。 処理命令の形式は「
: ?>」
ファイル名は- .xml、 メインドキュメントを保持する -00.xml。
OPTIONS
-l
カットするレベル: 1 はルートの子ごとにファイルを生成し、2 は孫ごとにファイルを生成します
デフォルトは1
-c
条件に合格した要素ごとにファイルを生成する
xml_split -c 各 "section" 要素を独自のファイル (ネストされた) に配置します。
セクションも処理されます)
現時点では、このオプションは「-l」を使用するよりもかなり遅いことに注意してください。
-s
(およそ) のファイルを生成します。 各ファイルの内容は、
新しい要素 (「xml_split::root」) なので、整形式の XML です。 サイズは次の形式で指定できます。
バイト、Kb、Mb、または Gb。
-g
グループ要素を XNUMX つのファイルにまとめます。 各ファイルの内容は新しいファイルに囲まれています。
要素 (「xml_split::root」) なので、整形式の XML です。
-b
出力のベース名。ファイルには名前が付けられます- <.ext>
はシーケンス番号です。以下の「--nb_digits」を参照してください。 は拡張機能です。以下を参照してください
" - 拡大"
デフォルトは、元のファイル名 (利用可能な場合) または「out」 (入力が
標準入力)
-n
各ファイルのシーケンス番号の桁数
桁数が多い場合必要な場合、それらが使用されます: 「--nb_digits 2」が使用される場合
112 個のファイルが生成され、「」という名前が付けられます。 -01.xml」から「」 -112.xml」
デフォルトは2
-e
生成されたファイルに使用する拡張子
デフォルトは元のファイル拡張子または「.xml」です。
-i 処理命令の代わりに XInclude 要素を使用して、サブファイルが必要な場所をマークします
含まれる
-v冗長出力
このオプションを使用すると、処理が大幅に (桁違いに) 遅くなる可能性があることに注意してください。
小さなドキュメントを大量に生成する場合
-Vはバージョンを出力して終了します
-h短いヘルプ
-m man(pod2textがパスに含まれている必要があります)
例
xml_split foo.xml # レベル 1 で分割
xml_split -l 2 foo.xml # レベル 2 で分割
xml_split -c section foo.xml # セクション要素ごとにファイルが生成されます
# ネストされたセクションが適切に分割される
onworks.net サービスを使用してオンラインで xml_splitp を使用する