#!/usr/bin/env python3
import sys
import subprocess
def system(argv):
if not argv:
# print("argv is None")
return 1
if isinstance(argv, str):
# print("convert string to list:", argv)
argv = argv.split()
if not isinstance(argv, list):
# print("argv is not a list")
return 1
if len(argv) == 0:
# print("len(argv) == 0")
return 1
if argv[0] == "":
# print("argv[0] == \"\"")
return 1
# print("run command >>>>>", argv, "<<<<<")
# print("----------")
try:
cp = subprocess.run(argv)
except FileNotFoundError as e:
print("system:", e)
return 2
# print("----------")
return_code = 0
try:
cp.check_returncode()
except subprocess.CalledProcessError as e:
return_code = e.returncode
# print("return_code:", return_code)
if return_code < 0 or return_code > 255:
return_code = 1
return return_code
if __name__ == '__main__':
if len(sys.argv) < 2:
print('command missing')
sys.exit(1)
if len(sys.argv) == 2:
exitcode = system(sys.argv[1])
sys.exit(exitcode)
exitcode = system(sys.argv[1:])
sys.exit(exitcode)
Comments