Collections:
"babel" Command - Output Data Destination and Format
How to specify Output Data Destination and Format for a "babel" command?
✍: FYIcenter.com
"babel" command arguments and options are organized into 3 sections
as shown in the following syntax to convert chemical data
from input to output with specified options.
babel input_section output_section option_section
You use output_section to specify Output Data Destination and Format for a "babel" command. The output_section must be the second section of the "babel" command line.
The output_section contains to two optional parts to specify output data format and output data destination as shown in the following syntax:
babel input_section [-o output_format] [output_name] option_section
There are 2 ways to specify output data format:
Explicit Format Name - A pre-defined format name is specified after the "-o" option flag with or without a space " ".
Here are some examples of specifying input data formats explicitly:
-o sdf -osdf -o smiles -osmiles -o svg -osvg ...
Implicit Format Name - No "-o" option flag is specified. In this case, the output_name part is required. Open Babel will determine the output data format implicitly from file name extension of output_name.
For example, the following "babel" command uses "molecule.svg" as the output_name to determine the output data format as "svg". This command writes data to molecule.svg in "svg" format.
fyicenter$ babel molecule.sdf molecule.svg 1 molecule converted 29 audit log messages
There are 3 ways to specify output data destination:
File name of a single output file - In this case, the output data goes to the specified file.
For example, the following "babel" command uses "molecule.svg" as the output_section, which specifies a single file named "molecule.svg". This command converts the molecule data from molecule.sdf to molecule.svg.
fyicenter$ babel molecule.sdf molecule.svg 1 molecule converted 29 audit log messages
File name prefix and extension for multiple output files with the "-m" option. In this case, the output data goes to multiple files, one per molecule.
For example, the following "babel" command uses "multi_.svg" as the output_section. This command converts molecules from multi.sdf to multi_1.svg, multi_2.svg, ..., because of the "-m" option.
fyicenter$ babel multi.sdf multi_.svg -m 3 molecules converted 3 files output. The first is multi_1.svg 87 audit log messages fyicenter$ ls -l multi_*.* -rw-r--r-- 1 fyicenter staff 7665 Apr 1 20:42 multi_1.svg -rw-r--r-- 1 fyicenter staff 5439 Apr 1 20:42 multi_2.svg -rw-r--r-- 1 fyicenter staff 5189 Apr 1 20:42 multi_3.svg
"stdout" stream - No output file is specified. In this case, the output data goes to the "stdin" stream, which could be the console screen, or data redirected to a command pipe. With no input file name, "babel" requires the "-o ..." option in the output_section to specify the output data type.
For example, the following "babel" command uses "-o smiles" as the output_section, which tells Open Babel to read "stdin" as SMILES data. This command reads chemical data from molecule.sdf and write to the screen in SMILES format
fyicenter$ babel molecule.sdf -o smiles O(C(=O)CCN1CC1)CC 20009 1 molecule converted 34 audit log messages
⇒ "babel" Command - Use "-o ..." as Output Delimiter
⇐ "babel" Command - Input Data Source and Format
2021-07-19, 499👍, 0💬
Popular Posts:
What Is SDF/Mol V3000 file format? SDF (Structural Data File) V3, also call Mol V3000 file, or Molfi...
Why am getting two "svg" tag levels in SVG source code generated by the "babel" command? If you are ...
How to get a list of File Formats Supported by Open Babel? You can use "babel -L formats" command to...
biotech.FYIcenter.com is a Website for biotech professionals looking for biotech resources, software...
How many command line tools are provided in the Open Babel package? By default, Open Babel package p...