"obgrep" - Search Molecules using SMARTS


What Is "obgrep" command? How to use it to Search Molecules using SMARTS strings?

✍: FYIcenter.com


"obgrep" command is a command line tool provided in the Open Babel package that allows you to Search Molecules using SMARTS strings. "obgrep" command does the same job as the "babel ... -s ..." with more options.

Here is the user manual of the "obgrep" command.

     obgrep -- an advanced molecular search program using SMARTS

     obgrep [OPTIONS] 'SMARTS-pattern' filename

     The obgrep tool can be used to search for molecules inside multi-molecule 
     database files (e.g., SMILES, SDF, etc.) or across multiple files.

     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

     -i format
           Specifies input and output format, see babel(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

     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' *.smi


"obminimize" - Optimize Geometry/Energy of Molecule

"obgen" - Generate Molecule 3D Structures

Other Open Babel Commands

⇑⇑ Open Babel Tutorials

2020-11-11, 175👍, 0💬