## org.apache.lucene.index
Class IndexSplitter

    java.lang.Object
      org.apache.lucene.index.IndexSplitter

    public class IndexSplitter

extends Object

Command-line tool that enables listing segments in an index, copying specific segments to another index, and deleting segments from an index.

This tool does file-level copying of segments files. This means it's unable to split apart a single segment into multiple segments. For example if your index is a single segment, this tool won't help. Also, it does basic file-level copying (using simple File{In,Out}putStream) so it will not work with non FSDirectory Directory impls.

WARNING: This API is experimental and might change in incompatible ways in the next release.
  You can easily accidentally remove segments from your index so be careful!

  NOTE: this tool is unaware of documents added atomically via `IndexWriter.addDocuments(java.util.Collection<org.apache.lucene.document.Document>)` or `IndexWriter.updateDocuments(org.apache.lucene.index.Term, java.util.Collection<org.apache.lucene.document.Document>)`, which means it can easily break up such document groups.

Field Summary
`SegmentInfos` `infos`

Constructor Summary
`IndexSplitter(File dir)`

Method Summary
`void` `listSegments()`
`static void` `main(String[] args)`
`void` `remove(String[] segs)`
`void` `split(File destDir, String[] segs)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### infos

    public SegmentInfos infos

Constructor Detail

### IndexSplitter

    public IndexSplitter(File dir)
                  throws IOException

Throws:
  `IOException`

Method Detail

### main

    public static void main(String[] args)
                     throws Exception

  Parameters:
    `args` -
  Throws:
    `Exception`

### listSegments

    public void listSegments()
                      throws IOException

  Throws:
    `IOException`

### remove

    public void remove(String[] segs)
                throws IOException

  Throws:
    `IOException`

### split

    public void split(File destDir,
                      String[] segs)
               throws IOException

  Throws:
    `IOException`