import subprocess # sh = run subprocess.check_output def sh(cmd): if type(cmd) != list: cmd = ['bash', '-c', cmd] return subprocess.check_output(cmd).decode('utf-8') # shx = sh but print the command first def shx(cmd): print(f">>> {cmd}") return sh(cmd) # sht = sh but return default on failure def sht(cmd, default=False): try: return sh(cmd) except: return default # shr = subprocess.run and check returncode == 0 def shr(cmd): if type(cmd) != list: cmd = ['bash', '-c', cmd] return subprocess.run(cmd).returncode == 0 # shrx = shr but print the command first def shrx(cmd): print(f">>> {cmd}") return shr(cmd) # shrt = shr but return default on failure def shrt(cmd, default=False): try: return shr(cmd) except: return default