diff --git a/nipype/pipeline/plugins/pbs.py b/nipype/pipeline/plugins/pbs.py index 2c354fd950..8d58bdebcb 100644 --- a/nipype/pipeline/plugins/pbs.py +++ b/nipype/pipeline/plugins/pbs.py @@ -6,7 +6,6 @@ import os from time import sleep -import subprocess from ...interfaces.base import CommandLine from .base import (SGELikeBatchManagerBase, logger, iflogger, logging) @@ -46,13 +45,12 @@ def __init__(self, **kwargs): super(PBSPlugin, self).__init__(template, **kwargs) def _is_pending(self, taskid): - # subprocess.Popen requires taskid to be a string - proc = subprocess.Popen(["qstat", str(taskid)], - stdout=subprocess.PIPE, - stderr=subprocess.PIPE) - _, e = proc.communicate() + result = CommandLine('qstat {}'.format(taskid), + environ=dict(os.environ), + terminal_output='allatonce', + ignore_exception=True).run() errmsg = 'Unknown Job Id' # %s' % taskid - return errmsg not in e + return errmsg not in result.runtime.stderr def _submit_batchtask(self, scriptfile, node): cmd = CommandLine('qsub', environ=dict(os.environ),