Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Perl 当大XML文件中的子标记数不固定时,选择XML标记_Perl_Unix - Fatal编程技术网

Perl 当大XML文件中的子标记数不固定时,选择XML标记

Perl 当大XML文件中的子标记数不固定时,选择XML标记,perl,unix,Perl,Unix,当大XML文件中的子标记数不固定时,选择XML标记 我有一个很大的XML文件: <root> <A>xyz</A> <B>xyz</B> <C>xyz</C> <info> <data>...<data> </info> <info> <data>...<d

当大XML文件中的子标记数不固定时,选择XML标记

我有一个很大的XML文件:

<root>
    <A>xyz</A>
    <B>xyz</B>
    <C>xyz</C>
    <info>
        <data>...<data>
    </info>
    <info>
        <data>...<data>
        <another_random_tag>....</another_random_tag>
    </info>
    .
    .thousands of info tag
</root>
现在,我想剪切10000个信息标记,并将它们保存在新文件part_1.xml较小的文件中

请建议如何在Unix或perl中执行此任务。

您可以使用的xml\u split来完成此任务。-g选项只执行以下操作:

-g <nb>  groups <nb> elements in a single file.
         The content of each file is enclosed in a new element 
         ("xml_split::root"), so it's well-formed XML.

您可以通过CPAN或cpanm或通过您的软件包管理器安装XML::Twig,在基于Debian的发行版上,它位于XML Twig tools中

@mpapec我想选择10k对,并将它们存储到part_1、part_2文件等中。@Bharat check out易于使用。或cpan上的其他XML模块。