"babel" Command Option Argument Syntax

Q

How to write "babel" command option argument properly? What's the difference between "-isdf" and "-i sdf"?

✍: FYIcenter.com

A

There is no difference between "-isdf" and "-i sdf". Both are valid "babel" option "-i" with an argument of "sdf".

If a "babel" command option takes an argument, you can specify the argument in two ways:

  • Argument follows the option flag with spaces to separate them, like "-i sdf". This makes the command line more readable.
  • Argument follows the option flag immediately with no space, like "-isdf". This makes the command line less readable.

If an option argument contains special characters, you should place it in double quotes or single quotes to protect it. Here are some examples:

fyicenter$ babel tyrosine.sdf -o smiles -s c(C)c
-bash: syntax error near unexpected token `('
  
fyicenter$ # using double quotes to protect ()
fyicenter$ babel tyrosine.sdf -o smiles -s "c(C)c"
c1cc(ccc1CC(C(=O)O)N)O  
1 molecule converted
43 audit log messages 

fyicenter$ # using single quotes to protect ()
fyicenter$ babel tyrosine.sdf -o smiles -s 'c(C)c'
c1cc(ccc1CC(C(=O)O)N)O  
1 molecule converted
43 audit log messages 

fyicenter$ # putting option flag and argument together
fyicenter$ babel tyrosine.sdf -o smiles "-sc(C)c"
c1cc(ccc1CC(C(=O)O)N)O  
1 molecule converted
43 audit log messages 

fyicenter$ # putting option flag and argument together
fyicenter$ babel tyrosine.sdf -o smiles "-s c(C)c"
c1cc(ccc1CC(C(=O)O)N)O  
1 molecule converted
43 audit log messages

fyicenter$ # using double quotes to protect ' and space
fyicenter$ babel tyrosine.sdf -o smiles --title "John's molecule"
c1cc(ccc1CC(C(=O)O)N)O  John's molecule
1 molecule converted
43 audit log messages 

 

"babel ... -f # -l #" - Split Large Molecule File

"babel -... --..." Command - Generic Conversion Options

Understanding "babel" Command Line Syntax

⇑⇑ Open Babel Tutorials

2020-06-04, 161👍, 0💬