Package schrodinger :: Package utils :: Module subprocess
[hide private]
[frames] | no frames]

Module subprocess

A wrapper to the standard library subprocess module.

This module allows you to avoid passing "sh" or "$SCHRODINGER/run" as arguments to subprocess.call() function. It automatically checks for executables in the $SCHRODINGER and $SCHRODINGER/utilities directories, and adds an interpreter to the command where appropriate.

A general limitation of this module is that the subprocess commands must be specified as lists of strings. This is a conscious design decision meant to avoid issues with quoting arguments that contain spaces.

Copyright Schrodinger, LLC. All rights reserved.

Functions [hide private]
 
_fix_call_cmd(cmd)
If the program name (cmd[0]) doesn't exist as a file and isn't an absolute path, look for the program in the $SCHRODINGER and $SCHRODINGER/utilities directories.
 
call(cmd, **kwargs)
Run a command with arguments.
 
Popen(cmd, **kwargs)
A wrapper for the builtin subprocess module's Popen class.
Variables [hide private]
  __doc__ = ...
  PIPE = -1
  STDOUT = -2
  __package__ = None
hash(x)
Function Details [hide private]

_fix_call_cmd(cmd)

 

If the program name (cmd[0]) doesn't exist as a file and isn't an absolute path, look for the program in the $SCHRODINGER and $SCHRODINGER/utilities directories.

If the program executable has .pl or .py or .sh extension, and the appropriate interpreter is not specified '$SCHRODINGER/run' is added as interpreter for .pl or .py extensions and 'sh' for .sh extension. If the interpreter is specified as a simple 'perl' or 'python' the command is not modified.

Return a list of command line arguments that can be used to launch the command.

Parameters:
  • cmd (list of str) - The command to be run, specified as a list of strings.

call(cmd, **kwargs)

 

Run a command with arguments.

Look for executables in $SCHRODINGER and $SCHRODINGER/utilities, and provide an interpreter if needed.

Parameters:
  • cmd (list of str) - The command to be run, specified as a list of strings.

Popen(cmd, **kwargs)

 

A wrapper for the builtin subprocess module's Popen class. This function will return a subprocess Popen instance, passing all kwargs on to the underlying class.

The only difference is that it will automatically look for executables in $SCHRODINGER and $SCHRODINGER/utilities, and provide an interpreter if needed.

Parameters:
  • cmd (list of str) - The command to be run, specified as a list of strings.

Variables Details [hide private]

__doc__

Value:
"""
A wrapper to the standard library subprocess module.

This module allows you to avoid passing "sh" or "$SCHRODINGER/run" as
arguments to subprocess.call() function. It automatically checks for
executables in the $SCHRODINGER and $SCHRODINGER/utilities directories\
, and
adds an interpreter to the command where appropriate.
...