15 lines
406 B
Python
15 lines
406 B
Python
|
|
import subprocess
|
||
|
|
import sys
|
||
|
|
|
||
|
|
|
||
|
|
def run_command(cmd, msg=None, shell=False, cwd='.', stdout=None):
|
||
|
|
if msg is None:
|
||
|
|
msg = f"# Running: {cmd}"
|
||
|
|
if stdout is not None:
|
||
|
|
stdout.write(msg + '\n')
|
||
|
|
if stdout != sys.stdout:
|
||
|
|
sys.stdout(msg)
|
||
|
|
subprocess.check_call(cmd, shell=shell, cwd=cwd, stdout=stdout, stderr=stdout)
|
||
|
|
if stdout is not None:
|
||
|
|
stdout.flush()
|