관리-도구
편집 파일: __init__.py
# -*- coding: utf-8 -*- # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT import subprocess def exec_utility(util_path, params, stderr=False): """ Executes supplied utility with supplied parameters :param util_path: string with path to callable utility :param params: utility parameters :param stderr: trigger to return stderr or not :return: Cortege (ret_code, cagefsctl_stdout) if stderr is False Cortege (ret_code, cagefsctl_stdout, cagefsctl_stderr) otherwise """ args = [] args.append(util_path) args.extend(params) with subprocess.Popen( args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True, ) as proc: out, err = proc.communicate() retcode = proc.returncode if stderr: return retcode, out.strip(), err.strip() return retcode, out.strip()