The jcunique utility is a command-line tool of JChem chemical structure filtering. It performs duplicate filtering on all the specified input molecules. These molecules can be specified as standard inputs, filenames, SMARTS/SMILES strings, or database tables. The jcunique utility supports a number of different molecular file formats, and manages multiple input sources. The output of a jcunique run is the union of unique molecules.
Note : If you need to perform chemical structure search, use our jcsearch utility.


The program should be invoked in one of the following forms:

	jcunique [options] [files...] 
	jcunique [options] DB:[table name]
	jcunique [options] [smiles1 smiles2 ... smiles(n)]
or	jcunique [options] [files...] DB:[table name]

With no file, or when file is -, it reads the standard input. When DB is specified, filtering is done in the database table, using connection information saved by other JChem programs (e.g., jcman).

-f format  output format (default: smiles). 
-o file    write output to file. Unless it specified, standard output is used.


  1. Filters duplicates among SMILES defined molecules, and sends the unique molecules to the standard output in SMILES format:

    	jcunique "CCC" "CCCC" "CCC=C" "CCC" "CCCCC" "CCCC"


  2. Filters duplicate molecules of different mrv files, and writes the result to the standard output in SMILES format:

     jcunique test1.mrv test2.mrv test3.mrv test4.mrv
  3. Filters duplicate molecules in a database table, and writes the result into a file:

     jcunique DB:demo1 -f sdf -o output.sdf
  4. Filters duplicate molecules of different input types; the output format is sdf, and displays the result in MarvinView:

     jcunique "CC(O)=O" DB:demo1 test1.mrv -f sdf |mview -