obgrep — an advanced molecular search program using SMARTS
Contents
Copyright
Copyright (C) 1998-2001 by OpenEye Scientific Software, Inc.
Some portions Copyright (C) 2001-2007 by Geoffrey R. Hutchison and other contributors.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU
General Public License as published by the Free Software Foundation version 2 of the License.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
License for more details.
Open Babel 3.1 Oct 10, 2019 obgrep(1)
Description
The obgrep tool can be used to search for molecules inside multi-molecule database files (e.g., SMILES,
SDF, etc.) or across multiple files.
Examples
Note that in all examples, the SMARTS pattern is enclosed in single quotes '...' to ensure it is not
changed by the shell.
Print all the molecules with a methylamine group:
obgrep'CN'database.smi
Print all the molecules without a methylamine group:
obgrep-v'CN'database.smi
Print the number of molecules without a methylamine group:
obgrep-v-c'CN'database.smi
Print methylamine (if it exists in the file):
obgrep-f'CN'database.smi
Print methylamine and/or methanol (if they exist):
obgrep-f'C[N,O]'database.smi
Print all molecules with aromatic carbon in all SMILES files in the directory (i.e., *.smi)
obgrep'c'*.smiName
obgrep — an advanced molecular search program using SMARTS
Options
If only a filename is given, obgrep will attempt to guess the file type from the filename extension.
-c Print the number of matches
-f Full match, print matching-molecules only when the number of heavy atoms is also equal to the
number of atoms in the SMARTS pattern
-iformat
Specifies input and output format, see obabel(1) for available formats
-n Only print the name of the molecules
-t# Print a molecule only if the pattern occurs # times inside the molecule
-v Invert the matching, print non-matching molecules
See Also
obabel(1), obfit(1), obrotate(1). The web pages for Open Babel can be found at: <http://openbabel.org/> A guide for constructing SMARTS patterns can be found at: <http://www.daylight.com/dayhtml/doc/theory/theory.smarts.html>
Synopsis
obgrep [OPTIONS] 'SMARTS-pattern'filename
